http://qs321.pair.com?node_id=521651

JFarr has asked for the wisdom of the Perl Monks concerning the following question:

Hello Monks. I'm still learning the nuiances of parsing in perl, so I ask your help. I have a file I'm reading in with the following data( there is more data than this one entry)
DsGccProxy.dll|AlarmForwarderServer.exe,AssetTracking.exe,CallerPositi +on.exe,ConferenceManager.exe,DirectionFinding.exe,EEAConfAccess.exd,E +EC_MARINE_BROADCAST.EXE,IncidentTracking.exe,MbEndpoinT.exe|YES
I've tried everything I can think of to parse this line. I need to be able to grab each field and the YES or NO at the end of the string. How in the heck do you parse this data? I've tried to do a
foreach my $t( @filename) { if( $t =~ m/\.exe/) { print $t,"\n"; } elsif( $t =~ m/\.dll/) { print $t , "\n"; } else { print $t, "\n"; } }
But this fails, it just prints the entire line entry.I've tried grepping it, but I'm not savy enough for this yet. Please help a struggling Perl-neophite. Thanks.