我正在使用js(javascript)正则表达式文字表达式,但我想这个答案适用于某种形式的所有正则表达式。
我只是想知道是否可以这样做: / \ w + [更多字符] / g
(请忽略不正确的表达方式,仅供参考)
或者我们是否锁定了元字符意义的终结性,如果我们需要包含更多字符,我们必须编写整个范围构造,即[a-Z ...更多字符]?
由于这是一个是/否的问题,我希望能够将这个问题用于未来的帮助。
感谢。
答案 0 :(得分:2)
您无法更改\w
的覆盖范围,但可以在其他类中使用它。
例如,[\wéà]
是[a-zA-Z0-9_éà]
的快捷方式。
答案 1 :(得分:2)
您可以像这样创建自己的角色类:
/[\wйцукенгшщз]+/g
你不仅可以捕捉'a','b'到'z',还可以捕捉西里尔字符''','''等。
示例(这里,最后一个'a'是拉丁语,其余是西里尔语):
var re = /[\wа-яА-ЯёЁ]+/;
var str = 'Славa';
var m;
if ((m = re.exec(str)) !== null) {
if (m.index === re.lastIndex) {
re.lastIndex++;
}
alert(m[0]);
}
答案 2 :(得分:1)
答案是肯定的,例如:
[\w\$\€]
将匹配\ w + 2个额外字符$和€。这相当于:
[a-zA-Z0-9_\$\€]