Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: check if string is valid with special cases

by swl (Parson)
on May 15, 2018 at 10:48 UTC ( [id://1214538]=note: print w/replies, xml ) Need Help??


in reply to check if string is valid with special cases

If your strings could contain embedded commas then use Text::CSV_XS or similar to split it into an array, then all or any from List::Util to check that none or some are blank.

use Text::CSV_XS; use List::Util qw /any/; my $csv = Text::CSV_XS->new; my @strings = ( 'a,b,c,d,e,f', 'a,b,,d,e,f', 'a,b,"c,and,some,commas",d,e,f', 'a,b,c,d,e', ); foreach my $string (@strings) { print "Checking $string\n"; my $status = $csv->parse ($string); my @array = $csv->fields; warn ($csv->error_input) if !$status; print "Did not get six entries in $string\n" if not @array == 6; print "one entry in $string is zero length\n" if any {!length $_} @array; print join ':', @array; print "\n\n"; }

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1214538]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2024-04-24 08:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found