【发布时间】:2018-08-15 19:21:51
【问题描述】:
我的 HTML 有以下输入元素(它旨在接受以“.com”结尾的电子邮件地址):
<input type="email" name="p_email_ad" id="p_email_ad" value="" required="required" pattern="[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+(\.[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+)*@([a-zA-Z0-9_][\-a-zA-Z0-9_]*(\.[\-a-zA-Z0-9_]+)*\.([cC][oO][mM]))(:[0-9]{1,5})?$" maxlength="64">
在过去 2 个月的某个时间点,Chrome 在验证输入时开始返回以下 JavaScript 错误(并阻止提交父表单):
图案属性值
[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+(\.[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+)*@([a-zA-Z0-9_][\-a-zA-Z0-9_]*(\.[\-a-zA-Z0-9_]+)*\.([cC][oO][mM]))(:[0-9]{1,5})?$不是有效的正则表达式:未捕获的 SyntaxError:无效 正则表达式:/[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+(\.[\-a-zA-Z0-9~!$%\^&*_=+}{\'?]+)*@([a-zA-Z0-9_][\-a-zA-Z0-9_]*(\.[\-a-zA-Z0-9_]+)*\.([cC][oO][mM]))(:[0-9]{1,5})?$/: 无效转义
Regex101.com 喜欢正则表达式模式,但 Chrome 不喜欢。我有什么语法错误?
【问题讨论】:
-
有根据的猜测:\\ 而不是 \'。
标签: regex html google-chrome