如何解释这个正则表达式 /\[\\W_\]/g

新手上路,请多包涵

我的代码是:

 var result2 = result.replace(/[\W_]/g,"").replace(",","").replace(".","");

代码有效,我得到了我需要完成的工作,但我不明白正则表达式 /[\W_]/g 如何工作的,而且我找不到任何我理解的文档。

原文由 Jarod Bassett 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 641
2 个回答

//g 这是一个全局正则表达式。因此它将对字符串中的多个匹配项进行操作。

[] 这将创建一个 字符集。基本上它会匹配列出的字符集中的任何单个字符。

\W_ 这匹配 “单词字符”和下划线的反转。任何非单词字符。

然后你有几个逗号和句点的一次性替换。老实说,如果这是完整的代码, /[\W_,.]/g ,省略其他两个替换,也可以正常工作。

原文由 Joseph Marikle 发布,翻译遵循 CC BY-SA 3.0 许可协议

[] 是字符集的开始和结束。

\W 表示“非单词”,与匹配单词的 \w 相对。

_ 是“_”字符。

/ 标记正则表达式的开始和结束。

g 表示这是一个全局搜索。

原文由 Vitor M. Barbosa 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题