我有一个单词计数器功能,但它没有考虑使用不良标点符号的人,例如:
"hello.world"
那只算一个字。
相反,它应该算作2个单词。
所以我需要一个正则表达式来替换逗号,句号以及任何一个空白的空格。
这是我到目前为止所拥有的:
proWords = proWords.replace(/[,\s]/, '\s');
negWords = negWords.replace(/[,\s]/, '\s');
答案 0 :(得分:5)
替换只是一个普通的字符串,它不应该包含像\s
这样的正则表达式转义序列。
proWords = proWords.replace(/[,.\s]+/g, ' ');
+
正则表达式使其替换任何字符序列,并且需要g
修饰符多次替换。
答案 1 :(得分:0)
更改
proWords = proWords.replace(/[,\s]/, '\s');
negWords = negWords.replace(/[,\s]/, '\s');
到
proWords = proWords.replace(/[,\.\s]/, ' ');
negWords = negWords.replace(/[,\.\s]/, ' ');
这应该有用。