【发布时间】:2015-03-11 01:11:28
【问题描述】:
我在我的 JavaScript 代码中看到这样一行:
var regex = /[^\w\s]/gi;
这个/gi在正则表达式中是什么意思?
其他部分我可以理解,因为它接受一组单词和空格,但不接受 /gi。
【问题讨论】:
-
其实匹配一个单个“非单词”、非空白字符
[^A-Za-z0-9_\s]。
标签: javascript regex
我在我的 JavaScript 代码中看到这样一行:
var regex = /[^\w\s]/gi;
这个/gi在正则表达式中是什么意思?
其他部分我可以理解,因为它接受一组单词和空格,但不接受 /gi。
【问题讨论】:
[^A-Za-z0-9_\s]。
标签: javascript regex
开头和结尾/ 称为分隔符。他们告诉解释器正则表达式的开始和结束位置。结束分隔符之后的任何内容都称为“修饰符”,在本例中为g 和i。
g 和 i 修饰符具有以下含义:
g = 全局,匹配字符串中模式的所有实例,而不仅仅是一个i = 不区分大小写(例如,/a/i 将匹配字符串 "a" 或 "A"。在您提供的上下文中 (/[^\w\s]/gi),i 毫无意义,因为正则表达式没有特定于大小写的部分。
【讨论】: