My JSは "stringify()"を使用してJSONにいくつかの文字列データを保存しますが、出力されたJSON文字列を観察すると、NULLやその他の不正な文字のような奇妙な文字が表示されます。今私はこれらの "悪い"文字のリストを持っていないので、私はそれらを文字列データから取り除くことができますか?あなたは「良い」文字のリストを持っている場合は、あなたのリストにないを任意の文字にマッチする正規表現を作成し、それが一致するものを取り除くことができJS内の文字列から不正な文字を取り除くにはどうすればよいですか?
答えて
単純なRegExがあればうれしいですが、私はそこにいるとは思いません。私が理解しているところでは、%$#@などの文字を許可したいが、タブやヌルのような他の奇妙な文字は許可しない。これが正しければ、私はあなたが本当に正規表現を使用する場合は、ホワイトリストのアプローチが必要であると考えられる
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
エラーが発生しました: 'TypeError:Object function String(){[ネイティブコード]}にはクロムのメソッド 'toCharCode'がありません – nnyby
私はそれを働かせました。妥当な文字セット(標準の句読点を含む)を得るためにはかなり長いリストになる可能性がありますが、Unicodeを気にしなければ、これは良いことになるかもしれません。(例:s.charCodeAt(0)> 31){' – nnyby
- 例えば、次の正規表現は何もない文字と一致します"a"、 "q"、または "z":
/[^aqz]+/ig
- 1. 文字列から文字を正しく削除するにはどうすればよいですか?
- 2. 文字列内の文字列を文字列内で渡すにはどうすればよいですか?
- 3. スクリプト内の文字列から非文字を削除するにはどうすればよいですか?
- 4. リスト内の文字列から文字を削除するにはどうすればよいですか?
- 5. これらの不正な文字を取り除く方法?
- 6. 文字列から隠された文字を取り除く
- 7. 文字列内の特定の文字列を削除するにはどうすればよいですか?
- 8. HTTPartyのxmlファイルから不正な文字を削除するにはどうすればよいですか?
- 9. eWamの文字列から不正な文字を削除するには?
- 10. 部分文字列を文字列から削除するにはどうすればよいですか?
- 11. Cの文字配列から文字列を取得するにはどうすればよいですか?
- 12. C文字列から文字列を取り除く
- 13. Androidのカスタムビューから文字列を取り除くにはどうすればいいですか? (TabLayout)
- 14. 文字列内の\文字を/文字に変更するにはどうすればよいですか?
- 15. C++の文字列から文字を削除するにはどうすればよいですか?
- 16. Javaの文字列から重複文字を削除するにはどうすればよいですか?
- 17. 文字列から一度に1文字を削除するにはどうすればよいですか?
- 18. Javaの文字列から特定の文字を除くすべての文字を削除するにはどうすればよいですか?
- 19. Android sdk/Java - 文字列から不正な符号化データを取り除く
- 20. Pythonの文字列から印刷できない文字を取り除く?
- 21. 文字列内の連続した文字を削除するにはどうすればよいですか?
- 22. iOS:バッファや文字列から空文字を削除するにはどうすればよいですか?
- 23. 文字列からHTMLエンコード文字を削除するにはどうすればよいですか?
- 24. 文字列の正規表現文字列を取り除く
- 25. PDFBoxで文字列から不正な文字を削除する
- 26. 数字と文字とは異なる文字列をすべて文字列から取り除く
- 27. (OCaml)文字列から文字を取得するにはどうすればよいですか?
- 28. 文字列内の1文字を大文字にするにはどうすればいいですか
- 29. Pythonで文字列から中間文字を削除するにはどうすればいいですか?
- 30. 文字列から不要な文字を削除する
これらの変な文字の原因は何ですか?根本原因を調査し、根本原因を修正する方が良いでしょう。 –