特定のフィールドに改行文字または改行文字を含むCSVファイルを指定すると、フィールドを複数の行に分割せずにデータを解析する方法を教えてください。JavaScriptを使用してフィールドに改行を含むCSVデータを解析する方法
例CSVデータ:
ID;Name;Country;ISO-2;Address;Latitude;Longitude
022wje3;Europa;Italy;IT;"Viale Kennedy 3
34073 Grado";"45,67960";"13,40070"
024oua5;Hiberia;Italy;IT;"Via XXIV Maggio 8
00187 Rome";"41,89720";"12,48680"
028gupn;Regal Riverside;Hong Kong;HK;"34-36 Tai Chung Kiu Road
Shatin
Hong Kong";"22,38260";"114,19600"
02j7qry;Okaliptus Holiday Villas Apart;Turkey;TR;"Sevket Sabanci Caddesi No. 70
Bahçelievler Mevkii
Turgutreis";"37,02130";"27,25120"
02pc99z;California Apartementos;Spain;ES;"Prat d'en Carbó
43840 Salou";"41,07620";"1,14667"
02tu1jz;Elvis Presley's Heartbreak;United States;US;"3677 Elvis Presley Blvd.
Memphis
Tennessee 38116";"35,04850";"-90,02710"
注:アドレスはコンマ
各行は、7つのフィールドを持っていますが、我々はしたくないを含めることができるので、フィールドが実際にセミコロン;
で区切られます改行文字を含むフィールドのデータを複数の行として誤って解析する...
私たちはStackOverflowの上でいくつかのPerl-焦点を当てて答えを見つけました:
- How to parse CSVs with newline and commas inside a field in Perl?
- Text::CSV parsing when data contains newline
が、私は、PerlのビットさびだとJS-焦点を当てた答えを発見していません。
二重引用符で囲んだ改行は、レコードの終わりではありません。あなたはそれらのPerlリンクからそれを得ましたか? Ben Nadelがどのようにしたのか分からなければ、非標準の場合の正規表現をどうやって行うのか分からないでしょう。 Csvの正規表現を解析するためにSOを検索する方がよいでしょう。私はかなり自分自身を投稿しました。 – sln
正確です。二重引用符の中にある新しい行は、まだ同じ行/フィールドです。私は 'CSVToArray'を理解しており、私たちの直面する問題を解決したと思います。私はあなたのRegExの回答を読んでブラッシュアップします。ありがとう! – nelsonic