我的JS使用“stringify()”将一些字符串数据保存到JSON中,但是观察输出的JSON字符串,我看到很多奇怪的字符(超出键空间),例如NULL和其他不好的字符。现在我没有这些“坏”字符的列表,所以我怎样才能从我的字符串数据中删除它们?如何从JS中的字符串去除不好的字符?
回答
这将是很好,如果有一个简单的正则表达式,但我不认为有。根据我的理解,你仍然希望允许像%$#@等字符,但是想禁止其他古怪的字符,如制表符和空值。如果这是正确的,我相信最简单的方法是将循环每个字符,并评估煤焦代码...
function stripCrap(val) {
var result = '';
for(var i = 0, l = val.length; i < l; i++) {
var s = val[i];
if(String.toCharCode(s) > 31)
result += s;
}
return result;
}
如果你真的想用正则表达式,白名单的做法似乎有必要。这将允许所有的数字,字母和空格...
val = val.replace(/[^a-z 0-9]+/gi,'');
非常感谢白名单建议。这样一个很好的解决方案来自这个问题 – Mansiemans 2011-10-24 21:10:19
我得到的错误:'TypeError:对象函数字符串(){[本机代码]}没有方法'toCharCode''在铬 – nnyby 2011-12-15 21:54:47
我得到它的工作,只是改变该行: 'if(s.charCodeAt(0)> 31){' – nnyby 2011-12-15 21:58:10
如果你有“好”字符的列表,你可以创造出您的列表中匹配任何字符不一个正则表达式,并去掉任何它匹配 - 例如,下面的正则表达式匹配任何不字母“a”,“q”或“z”:
/[^aqz]+/ig
- 1. 迭代过去的字符串和从字符串中去除字符串
- 2. 字符串去除字符的字符
- 3. 从字符串中去除不需要的字符
- 4. 如何从字符串中去除非ASCII字符?在C++中
- 5. 如何去除.htaccess中的字符串?
- 6. 从字符串去除XML
- 7. 如何从字符串中除去一组字符?
- 8. 如何从字符串中去除特定字符和单词
- 9. 如何去除从字符串中的不想要的字符在Objective-C
- 10. 如何从字符串中除去表情符号中的所有字符
- 11. 如何从SQL Server中的字符串中去除所有非字母字符?
- 12. 不能去除字符串中的\ r
- 13. 如何最好地去除文件中的某些字符串?
- 14. 除去最后的字符串除去字符
- 15. 除去大部分从字符串非字母字符的elisp
- 16. 如何从字符串中删除动态字符字符串?
- 17. 除字符串中的链接外,从字符串中除去下划线
- 18. 如何从字符串中去除非字母数字字符(包括空格)?
- 19. 从字符串中去除非数字字符
- 20. 如何从PHP字符串中去除字符而不会干扰HTML标记
- 21. 如何从字符串中删除不必要的字符?
- 22. 如何从字符串中删除不需要的字符
- 23. 如何从Python中的字符串中删除字符串?
- 24. 如何从tcl中的字符串中删除子字符串
- 25. 如何从python中的字符串中删除子字符串?
- 26. 如何从javascript中的字符串中删除子字符串?
- 27. 从字符串中去除RTF标记
- 28. 如何从Python字符串中去除unicode“标点符号”
- 29. 如何从字符串中去除标点符号?
- 30. 如何使用VBScript去除字符串的前n个字符?
什么导致这些奇怪的字符?调查根本原因并在那里解决它会更好。 – 2009-08-06 16:49:46