hujunsimon has asked for the wisdom of the Perl Monks concerning the following question:
i have a question for parsing the csv file. i had csv file and have each row like this:
'car reg, location, 'gps string: lats:xxxx,longs:xxxxx, Alts:xxxx', number of satellites fix';how can i split this into an array, so it has 4 values ? i know how to do this with double quotation, but not sure with single. there must be someway to do it. i also tried the Text::ParseWords, but not sure how to use it with parsing csv file. anyone can help ?
i also attached my code here:thanks !#!/usr/bin/perl use strict; use warnings; use Text::CSV; my $parser = Text::CSV->new(); sub trim($); my $scomma = "@"; my $nline = "\n"; open (TEMP, $file) or die("Error: cannot open $file\n"); open (OUTPUT,">$outfile") or die("Error: cannot open $outfile\n"); while (my $line = <TEMP>) { if ($parser->parse($line)) { my @fields = $parser->fields(); print OUTPUT trim($fields[0]).$scomma.trim($fields[1]).($fields[2] +).$scomma.trim($fields[3]).$scomma.trim($fields[17]).$scomma.trim($fi +elds[18]).$nline; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: How to parse a csv file by comma, but ignore comma inside the single quotation
by Tux (Canon) on Aug 03, 2011 at 14:43 UTC | |
|
Re: How to parse a csv file by comma, but ignore comma inside the single quotation
by james2vegas (Chaplain) on Aug 03, 2011 at 14:12 UTC | |
by hujunsimon (Sexton) on Aug 03, 2011 at 14:31 UTC | |
by hujunsimon (Sexton) on Aug 03, 2011 at 14:24 UTC | |
|
Re: How to parse a csv file by comma, but ignore comma inside the single quotation
by Anonymous Monk on Aug 03, 2011 at 14:15 UTC | |
|
Re: How to parse a csv file by comma, but ignore comma inside the single quotation
by Anonymous Monk on Aug 03, 2011 at 14:09 UTC |