如何在JavaScript中使用regex从字符串中删除所有标点符号?

如果我有一个字符串与任何类型的非字母数字字符:

"This., -/ is #! an $ % ^ & * example ;: {} of a = -_ string with `~)() punctuation"

如何在JavaScript中获得它的无标点版本:

"This is an example of a string with punctuation"
如果你想从字符串中删除特定的标点符号,最好明确删除你想要什么

replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g,"")

执行上述操作仍然不返回您指定的字符串。如果你想删除任何额外的空间,留下了删除疯狂的标点符号,那么你会想做一些类似的事情

replace(/\s{2,}/g," ");

我的完整例子:

var s = "This., -/ is #! an $ % ^ & * example ;: {} of a = -_ string with `~)() punctuation";
var punctuationless = s.replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g,"");
var finalString = punctuationless.replace(/\s{2,}/g," ");

在firebug控制台中运行代码的结果:

http://stackoverflow.com/questions/4328500/how-can-i-strip-all-punctuation-from-a-string-in-javascript-using-regex

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:如何在JavaScript中使用regex从字符串中删除所有标点符号?