\ w vs \ W在JavaScript正则表达式中?
\w与\W
javascript 中的 '\w'和'\W'之间有很多变体,其中前者照顾字母字符(例如字母数字),而后者照顾非单词字符(例如&,^,%等。让我们简要地讨论一下。
语法1
new RegExp("\\w", "g");
上面的代码给出了在javascript中查找“单词字符”的语法。
语法2
new RegExp("\\W", "g");
上面的代码给出了在javascript中查找“非单词字符”的语法。
示例1
在以下示例中,使用\w以及全局对象'g'。如果未使用全局对象“g”,则仅第一个字母数字字母(如果存在)将显示在输出中。由于此处使用全局对象'g',因此将显示所有字母数字字符,如输出所示。
<html> <body> <script> var str = "**Tutorix is the best e-learning platform%!"; var regpat = /\w/g; var result = str.match(regpat); document.write(result); </script> </body> </html>
输出结果
T,u,t,o,r,i,x,i,s,t,h,e,b,e,s,t,e,l,e,a,r,n,i,n,g,p,l,a,t,f,o,r,m
示例2
在以下示例中,使用了“\W”,因此在输出中显示了“非单词字符”。如果未使用全局对象“g”,则仅显示第一个“非单词字符”。由于此处使用了“g”,因此所有非单词字符都将显示,如输出所示。
<html> <body> <script> var str = "**Tutorix is the best e-learning platform%!"; var regpat = /\W/g; var result = str.match(regpat); document.write(result); </script> </body> </html>
输出结果
*,*, , , , ,-, ,%,!