in reply to can't use unpack or split??

hmmm; what about this. it's simple:
my @records = (<DATA>); # lookbehind to make sure those that start # with an apostrophe end with one... $tok1 = qr/[\'][A-Za-z0-9\s\']+(?<=\')/; $tok2 = qr/[A-Z\?0-9]+; # for each record in the above sample... # note precedence in regex below... foreach my $record (@records){ my @fields = ($record =~ /$tok1|$tok2/g); # do something with fields } __DATA__ #...those irritating records in full...
works for the dataset provided, and i think for seavers extension.
...wufnik

-- in the world of the mules there are no rules --

Replies are listed 'Best First'.
Re^2: can't use unpack or split??
by seaver (Pilgrim) on Jun 11, 2004 at 18:44 UTC
    It is definitely a good one, and one I'll remember for the future, but unfortunately, it relies on the delimitation of the second column by apostrophes, and this is not guaranteed, there are NO delimiters in the second column!

    So a regex search that tries to matches as much of the line as possible, as written by browserUk, is the straight forward answer that will include any possibilties.

    Thanks to everyone for answering

    Cheers
    Sam