Belirli alanlarda yeni satır/dönüş karakterleri olan bir CSV dosyası verildiğinde, bir alanı birden fazla satıra ayırmadan verileri nasıl ayrıştırırız.JavaScript'i kullanarak alandaki yeni satırları içeren CSV verilerini ayrıştırma
Örnek CSV veri:
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"
Not: alanların gerçekte Adres virgül Her satır 7 alanları vardır
içerebileceğinden noktalı virgül ;
ayrılmış ancak biz istemiyoruz Yanlışlıkla yeni satır karakterleri içeren bir alandaki verileri birden fazla satır olarak ayırmak için ...
Biz StackOverflow'daki birkaç Perl odaklı cevapları bulundu:
- How to parse CSVs with newline and commas inside a field in Perl?
- Text::CSV parsing when data contains newline
ama Perl biraz paslandım ve JS-odaklı bir cevap keşfedilmiş değil.
Çift tırnak içine alınan satırlar, kayıtların sonu değildir. Bu Perl bağlantılarından herhangi birini aldın mı? Ve, Ben Nadel'in bunu nasıl yaptığını anlamıyorsanız, standart olmayan durumlar için nasıl bir normal ifadeyi yapacağınızı bilmeyeceksiniz. Csv ayrıştırma regexleri için SO aramak daha iyidir. Kendimi çok az yayınladım. – sln
Tam olarak. çift tırnak içinde bulunan yeni satırlar hala aynı satır/alan. Ben 'CSVToArray' anladım düşünüyorum ve bizim acil sorun çözüldü. Bir kaç tane RegEx cevabını fırçalamak için okuyacağım. Teşekkürler! – nelsonic