Mad_Mac has asked for the wisdom of the Perl Monks concerning the following question:
I have a simple Perl script that reads some input variables from a text file. The variables are a comma separated list. I want them in an array, but I only know how to read them into a scalar and then split them. Is there a way do this in one step?
Here's some simple test code, I am playing around with:
opendir (DIR, ".") or die "$!"; my @files = grep {/conf.*?\.txt/} readdir DIR; close DIR; print"\nNo input files found.\n" if scalar(@files)==0; foreach my $file (@files) { my $content = do { local( @ARGV, $/ ) = $file ; <> } ; print "parsing $file...\n"; my ($inc_vals)=$content=~/inc_vals=(.*?)\n/ my @inc_vals=split(/, /, $inc_vals) unless $inc_vals=~/^\s$/; } foreach my $value (@inc_vals) { print "$value\n"; }
If it's relevant, I am using Strawberry Perl 5.10.1 on W7 x64.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Slurping strings from text file and pushing to array?
by shawnhcorey (Friar) on Jul 01, 2010 at 23:48 UTC | |
|
Re: Slurping strings from text file and pushing to array?
by ikegami (Patriarch) on Jul 01, 2010 at 21:05 UTC | |
by Mad_Mac (Beadle) on Jul 01, 2010 at 21:32 UTC | |
by ikegami (Patriarch) on Jul 01, 2010 at 22:02 UTC | |
|
Re: Slurping strings from text file and pushing to array?
by nudge (Acolyte) on Jul 02, 2010 at 11:12 UTC | |
|
Re: Slurping strings from text file and pushing to array?
by Anonymous Monk on Jul 02, 2010 at 14:01 UTC |