有人可以帮我用javascript或Jquery从字符串中删除特殊字符。
注意: 我想只删除一组特定的特殊字符,但不能用任何字符替换它。以下是我正在尝试的代码。提前谢谢。
代码:
filename = filename.replace(/[&\/\\#,+()$~%'":*?<>{}|]/g, '').replace(/\u201C/g, '').replace(/\u201D/g, '').replace(/\s+/g, '');
示例字符串名称:
Test5&amp;特别〜,#,%,&amp; ,, ,,,,,,,,“”
实际结果:
(Test5 空间特别----------------------- 空格直到这里)
预期结果:
Test5特别
答案 0 :(得分:9)
尝试使用此功能:
function removeSpecialChars(str) {
return str.replace(/(?!\w|\s)./g, '')
.replace(/\s+/g, ' ')
.replace(/^(\s*)([\W\w]*)(\b\s*$)/g, '$2');
}
/(?!\w|\s)./g
删除任何不是单词或空格的字符。 \w
相当于[A-Za-z0-9_]
/\s+/g
找到一个或多个空格的任何外观并用一个空格替换/^(\s*)([\W\w]*)(\b\s*$)/g
修剪字符串以删除开头或结尾处的任何空格。