#!/usr/bin/perl -- use strict; use warnings; use Data::Dump qw/ dd /; my $line = q{11/21/2010 05:02 AM 1,572,696,748 IN11-135.E05}; #11/21/2010 05:02 AM 1,572,696,748 IN11-135.E05 #1234567890 12345678 12345678901234567 # date A10 time +A8 size A18 filename the rest # x2 to ignore spaces between date and time my( $date, $time, $sizewithcommas, $name ) = unpack "A10 x2 A8 x1 A18 + A*", $line; dd( [ $date, $time, $sizewithcommas, $name ] ); my $raw = q{ 03/19/2011 04:01 PM 1,451 filename 09/07/2011 05:15 AM <DIR> dirname }; open my($fh), '<', \$raw ; while(<$fh>){ my( $datetime, $filesizeordirindicator, $filename ) = eval { unpack + 'A20 A18 x1 A*', $_ }; warn $@ if $@; dd([ $datetime, $filesizeordirindicator, $filename ]); } __END__ ["11/21/2010", "05:02 AM", " 1,572,696,748", "IN11-135.E05"] 'x' outside of string in unpack at crap line 22, <$fh> line 1. [undef, undef, undef] ["03/19/2011 04:01 PM", " 1,451", "filename"] ["09/07/2011 05:15 AM", " <DIR>", "dirname"]
In reply to Re: How to Remove Commas ?
by Anonymous Monk
in thread How to Remove Commas ?
by allendevans
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |