JavaScript で二重引用符の内容を保持しながら文字列をカンマで分割する
JavaScript でカンマ区切りの文字列を扱う場合、次の処理が重要です。特定のセクションを囲むために二重引用符が使用されている状況。これを無視すると、意図しない分割が発生する可能性があります。
問題:
カンマ区切りの文字列が与えられた場合、目的は二重引用符で囲まれた内容を保持する配列を取得することです。 。たとえば、「a, b, c, "d, e, f", g, h」を 6 つの要素の配列に変換します: ["a", "b", "c", "d, e, f" 、"g"、"h"]。
間違ったアプローチ:
/, |"[^"] のような正規表現を使用した split() メソッドの使用"/g は文字列を誤って分割し、二重引用符内の内容も抽出します。
正しい解決策:
このシナリオを正しく処理するには、より調整された正規表現式が必要です:
/(".*?"|[^",\s]+)(?=\s*,|\s*$)/g
説明:
使用法:
const str = 'a, b, c, "d, e, f", g, h'; const arr = str.match(/(".*?"|[^",\s]+)(?=\s*,|\s*$)/g); for (let i = 0; i < arr.length; i++) { console.log(`arr[${i}] = ${arr[i]}`); }
出力:
arr[0] = a arr[1] = b arr[2] = c arr[3] = "d, e, f" arr[4] = g arr[5] = h
以上が二重引用符内の内容を保持しながら、JavaScript でカンマ区切りの文字列を分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。