[英]Regex and JavaScript String With a Dollar ($) at the end
在回答这个PHP问题时: regex - preg_replace字符串 ,我在Javascript中遇到了一些我不明白的东西。 鉴于以下内容:
var s = "abc1!?d$";
alert(s.replace(/\W+/, " "));
我被警告:
abc d$
为什么不剥离最后一美元?
因为有一个介入的单词字符。 尝试这个:
alert(s.replace(/\W+/g, ' '));
正则表达式上没有“g”后缀,它只进行一次替换。 处理“!?” 在中间,但“d”结束序列。
因为您没有在匹配器上使用(g)lobal标志,所以它只匹配第一个连续的非单词字符序列 。
以下应该给出您期望的结果:
var s = "abc1!?d$";
alert(s.replace(/\W+/g, " "));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.