我在我的JavaScript代码中看到一行如下:
var regex = /[^\w\s]/gi;
Run Code Online (Sandbox Code Playgroud)
/gi
正则表达式中这是什么意思?
其他部分我可以理解,因为它接受一组单词和空格,但不是/gi
.
vks*_*vks 77
g modifier: global. All matches (don't return on first match)
i modifier: insensitive. Case insensitive match (ignores case of [a-zA-Z])
Run Code Online (Sandbox Code Playgroud)
在你的情况下虽然i
是不重要的,因为你没有捕获[a-zA-Z]
.
对于输入,!@#$
如果g
修饰符不存在,正则表达式将返回第一个匹配!
请参见此处.
如果g
在那里它将返回整体或它可以匹配的任何东西.看这里
eli*_*ide 21
开头和结尾/
称为分隔符.他们告诉口译员正则表达式的开始和结束.在这种情况下,结束分隔符之后的任何内容都称为"修饰符" .g
i
在g
与i
改性剂具有以下含义:
g
= global,匹配字符串中所有模式的实例,而不仅仅是一个i
=不区分大小写(因此,例如,/a/i
将匹配字符串"a"
或"A"
.在你给(/[^\w\s]/gi
)的上下文中,i
没有意义,因为正则表达式没有特定于案例的部分.
归档时间: |
|
查看次数: |
69044 次 |
最近记录: |