2015-01-13 27 views
28

我看到在我的JavaScript代码像这样的一行:正则表达式中/ gi的含义是什么?

var regex = /[^\w\s]/gi; 

这是什么/gi在正则表达式的含义是什么?

其他部分我可以理解,因为它接受一组词和空格,但不是/gi

+0

实际上,它匹配一个* single *“non-word”,非空白字符'[^ A-Za-z0-9_ \ s]'。 –

回答

36
g modifier: global. All matches (don't return on first match) 

i modifier: insensitive. Case insensitive match (ignores case of [a-zA-Z]) 

在你的情况虽然i因为你不捕捉[a-zA-Z]是无关紧要的。

对于输入像[email protected]#$如果g修饰符是不存在正则表达式将返回第一匹配!See here

如果g在那里,它会返回整个或任何它可以匹配。 See here

9

g =全球性的,符合所有实例的字符串,而不仅仅是一个

i =不区分大小写

在你给上下文(/[^\w\s]/gi),该i是没有意义的,因为没有的情况下正则表达式的特定部分。

相关问题