如何使用 Javascript 从字符串中删除特殊字符
How to remove special characters from a string using Javascript
有人可以帮我使用 javascript 或 Jquery 从字符串中删除特殊字符吗?
注:
我只想删除一组特定的特殊字符,而不是用任何字符替换它。下面是我正在尝试的代码。提前致谢。
代码:
filename = filename.replace(/[&\/\#,+()$~%'":*?<>{}|]/g, '').replace(/\u201C/g, '').replace(/\u201D/g, '').replace(/\s+/g, '');
示例字符串名称:
测试 5 & 特别~,#,%,&,“”
实际结果:
(测试5 space特别---------------------space到这里)
预期结果:
Test5特别
试试这个函数:
function removeSpecialChars(str) {
return str.replace(/(?!\w|\s)./g, '')
.replace(/\s+/g, ' ')
.replace(/^(\s*)([\W\w]*)(\b\s*$)/g, '');
}
- 第一个正则表达式
/(?!\w|\s)./g
删除任何不是单词或白色的字符space。 \w
等同于 [A-Za-z0-9_]
- 第二个正则表达式
/\s+/g
找到 1 个或多个白色 space 的任何外观并将其替换为一个白色 space
- 第三个正则表达式
/^(\s*)([\W\w]*)(\b\s*$)/g
trim 要删除开头或结尾的任何白色的字符串space。
有人可以帮我使用 javascript 或 Jquery 从字符串中删除特殊字符吗?
注: 我只想删除一组特定的特殊字符,而不是用任何字符替换它。下面是我正在尝试的代码。提前致谢。
代码:
filename = filename.replace(/[&\/\#,+()$~%'":*?<>{}|]/g, '').replace(/\u201C/g, '').replace(/\u201D/g, '').replace(/\s+/g, '');
示例字符串名称:
测试 5 & 特别~,#,%,&,“”
实际结果:
(测试5 space特别---------------------space到这里)
预期结果:
Test5特别
试试这个函数:
function removeSpecialChars(str) {
return str.replace(/(?!\w|\s)./g, '')
.replace(/\s+/g, ' ')
.replace(/^(\s*)([\W\w]*)(\b\s*$)/g, '');
}
- 第一个正则表达式
/(?!\w|\s)./g
删除任何不是单词或白色的字符space。\w
等同于[A-Za-z0-9_]
- 第二个正则表达式
/\s+/g
找到 1 个或多个白色 space 的任何外观并将其替换为一个白色 space - 第三个正则表达式
/^(\s*)([\W\w]*)(\b\s*$)/g
trim 要删除开头或结尾的任何白色的字符串space。