in reply to Re: What is the fastest way to extract data from a delimited string?
in thread What is the fastest way to extract data from a delimited string?

Not very fast or maintenable, though. How about something like:
sub read_stuff { my ($handle, $delim, $col) = @_; my $prep = '^\s*'; $prep .= "\w+${delim}+" for 1 .. $col - 1; $prep .= "(\w+)(?:${delim}|$)"; my $regex = qr/$prep/; my @list = map { /$regex/o } <$handle>; return @list; } my $handle = IO::File->new(filename => "some_file"); my @list = read_stuff($handle, ' ', 6);
Remember something - "fast" is a relative term. You might squeeze an additional millisecond from your CPU, but require an extra 8 hours every time you want to make a change to your code. To me, that's not worth it. My 8 hours is worth more than one millisecond of CPU time. To me, "fast" has to do with acceptable CPU progress and lightning-quick maintenance time. YMMV.

------
We are the carpenters and bricklayers of the Information Age.

Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

  • Comment on Re: Re: What is the fastest way to extract data from a delimited string?
  • Download Code