Front page | perl.beginners |
Postings from March 2002
Re: parsing a block
From:
Jonathan E. Paton
Date:
March 30, 2002 14:15
Subject:
Re: parsing a block
Message ID:
20020330221504.58107.qmail@web14602.mail.yahoo.com
> I want to be able to split data by using END delimiter but this didn't work! Here what I tried:
>
> # to split lines by END delimiter
> while ($line =<INPUT>) {
> @mylineBlock = split/END\n/, $line;
> }
Yay, your file format is $\ compatible, which is the input record separator.
local $/ = "END\n";
while (<INPUT>) {
#Do something with record. e.g.
foreach my $line (split /\n/) {
foreach my $field (split /,/) {
# Do something with data.
}
}
}
There is alternatives to doing this, depending on what exactly you require from this. The
disadvantage of this approach is the blocksize... if you have TONS of data between the END tokens
it will take an equal amount of memory to store it. Rarely is that a problem in non-production
scripts.
Jonathan Paton
__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com