1

JavaScriptでJSON.parseを使用してJSONを解析しています。この例のテキストをコピーすると問題が発生します。ダブルクリックしてテキストをクリップボードにコピーします。正規表現を使用してすべての空白を削除すると、機能します。しかし、私は問題のキャラクターを見つけることができません。私はもう試した:

replace(/\t/g,'');
replace(/\n/g,'');
replace(/\r/g,'');
replace(/\0/g,'');
replace(/\x0B/g,'');

...それでも問題のあるキャラクターは残ります。それを追跡するために何ができますか。Windowsのメモ帳にテキストを貼り付けると、文字が削除され、JSON.parseが機能します。

4

1 に答える 1

1

コピーして貼り付けると、インデントは NO-BREAK SPACE 文字、コード 0x80 で構成され、シーケンス 0xc2、0xa0 として UTF-8 でエンコードされます

すべての NO-BREAK SPACE 文字を通常のスペース (0x20) に置き換えると、(Perl の を使用して) JSON として解析できますJSON::decode_json

于 2012-04-10T07:22:37.767 に答える