我的代码是:
var result2 = result.replace(/[\W_]/g,"").replace(",","").replace(".","");
代码有效,我得到了我需要完成的工作,但我不明白正则表达式 /[\W_]/g
如何工作的,而且我找不到任何我理解的文档。
原文由 Jarod Bassett 发布,翻译遵循 CC BY-SA 4.0 许可协议
我的代码是:
var result2 = result.replace(/[\W_]/g,"").replace(",","").replace(".","");
代码有效,我得到了我需要完成的工作,但我不明白正则表达式 /[\W_]/g
如何工作的,而且我找不到任何我理解的文档。
原文由 Jarod Bassett 发布,翻译遵循 CC BY-SA 4.0 许可协议
[
和 ]
是字符集的开始和结束。
\W
表示“非单词”,与匹配单词的 \w
相对。
_
是“_”字符。
/
标记正则表达式的开始和结束。
g
表示这是一个全局搜索。
原文由 Vitor M. Barbosa 发布,翻译遵循 CC BY-SA 3.0 许可协议
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
6 回答821 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
/
…/g
这是一个全局正则表达式。因此它将对字符串中的多个匹配项进行操作。[
…]
这将创建一个 字符集。基本上它会匹配列出的字符集中的任何单个字符。\W_
这匹配 “单词字符”和下划线的反转。任何非单词字符。然后你有几个逗号和句点的一次性替换。老实说,如果这是完整的代码,
/[\W_,.]/g
,省略其他两个替换,也可以正常工作。