我的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