ホームページ > ウェブフロントエンド > jsチュートリアル > 二重引用符の代わりに一重引用符を使用して JSON 文字列を解析するにはどうすればよいですか?

二重引用符の代わりに一重引用符を使用して JSON 文字列を解析するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-01 00:55:12
オリジナル
141 人が閲覧しました

How to Parse a JSON String with Single Quotes Instead of Double Quotes?

一重引用符を含む JSON として文字列を解析しますか?

文字列を JSON として解析しようとすると、文字列に単一引用符が含まれる場合に問題が発生する可能性があります。必須の二重引用符の代わりに引用符を使用してください。

問題ステートメント:

文字列 str = {'a':1} の例を考えてみましょう。オブジェクト キーの前後には一重引用符が使用されています。 JSON.parse(str) を使用してこの文字列を解析すると、「キャッチされない構文エラー: 予期しないトークン '…' 例外」が発生します。

解決策:

JSON 標準では、文字列が次のように規定されています。二重引用符で囲む必要があります。一重引用符で囲まれた文字列の解析は成功しません。この問題を解決するには、次の 2 つのアプローチが考えられます:

  • 一重引用符を二重引用符に置き換える: JSON の構造が明確に定義されており、エスケープされた一重引用符が含まれていない場合文字列内 (通常は JSON では無効) では、replace メソッドを使用してすべての一重引用符を二重引用符に置き換えることができます。 quotes:
JSON.parse(str.replace(/'/g, '"'));
ログイン後にコピー
  • 手動解析: JSON が複雑で、文字列内にエスケープされた一重引用符が含まれている可能性がある場合は、手動で解析することをお勧めします。文字列をループし、さまざまなトークン (キー、値、カンマ、中括弧など) を識別し、JSON オブジェクトを段階的に構築できます。

以上が二重引用符の代わりに一重引用符を使用して JSON 文字列を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート