我有一個CSV文件,格式如下,我使用的是基於逗號作爲分隔符的Perl split
命令。問題是我有一個嵌入逗號的引用字符串"HTTP Large, GMS, ZMS: Large Files"
,它失敗。數組值只有更少的元素。我如何修改split命令。像嵌入的逗號使用分隔符解析CSV中帶引號的字符串CSV文件
my @values = split('\,', $line);
CSV文件
10852,800 Mob to Int'l,235341739,573047,84475.40,0.0003,Inbound,Ber unit
10880,"HTTP Large, GMS, ZMS: Large Files",52852810,128,13712.68,0.0002,,Rer unit
13506,Presence National,2716766818,2447643,309116.40,0.0001,Presence,per Cnit
你的問題引出了一個問題 - 爲什麼不使用(例如)在['文本:: CSV'(http://search.cpan.org/~makamaka/Text- CSV-1.21/lib/Text/CSV.pm)模塊,它可以爲你處理這種問題? – 2012-03-23 04:58:54
所有程序員都應該學習的一節課:切勿自行解析CSV或HTML。使用現有的模塊,它們通常是成熟的,穩定的並且經過良好測試。 – dgw 2012-03-23 10:25:11