javascript - 正则表达式搞乱了语法突出显示

标签 javascript regex syntax syntax-highlighting

我在这里遗漏了什么吗?该正则表达式用于电子邮件验证,看起来其中一个正斜杠正在消除语法突出显示。

enter image description here

var emailRegex = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;

var validEmail = emailRegex.test(newEmail.email);

我做错了什么吗?是否有另一种方法来格式化此正则表达式以防止这种情况发生?

我无法找到这个问题的答案。

最佳答案

您可能只需转义正则表达式中的 / 即可。否则语法荧光笔认为它关闭了正则表达式文字。

//-----------------------vv
var re = /[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;

或者您可以使用您正在使用的任何编辑器来提交错误。

<小时/>

请注意,SO 上的语法突出显示与原始版本没有问题。

var re = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;

关于javascript - 正则表达式搞乱了语法突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17414520/

相关文章:

javascript - jQuery .on 不能很好地检测点击?

javascript - 无法获取图像

正则表达式,两个字符之间的所有内容(转义字符除外)

JavaScript 函数参数 : positional -> map transition

c++ - C++ 中的 for-each-loop 用于二维数组

javascript - 将所有文本链接转换为实际链接

regex - 多次匹配同一个未知字符

regex - 如何在 Ansible 的 lineinfile 模块中的正则表达式中转义 1 个或多个空格?

ruby 语法。以下示例中的 "=~"、 "//i"、 "{2}"做了什么?

javascript - 如何在不刷新页面的情况下更改背景颜色 "continuously"