Text::ParseWords - parse text into an array of tokens
@words = "ewords($delim, $keep, @lines);
@words = &shellwords(@lines);
@words = &old_shellwords(@lines);
"ewords() accepts a delimiter (which can be a regular expression) and
a list of lines and then breaks those lines up into a list of words
ignoring delimiters that appear inside quotes.
The $keep argument is a boolean flag. If true, the quotes are kept with
each word, otherwise quotes are stripped in the splitting process. $keep
also defines whether unprotected backslashes are retained.
A &shellwords() replacement is included to demonstrate the new package.
This version differs from the original in that it will _NOT_ default to
using $_ if no arguments are given. I personally find the old behavior
to be a mis-feature.
"ewords() works by simply jamming all of @lines into a single string
in $_ and then pulling off words a bit at a time until $_ is exhausted.
Hal Pomeranz (email@example.com), 23 March 1994
Basically an update and generalization of the old shellwords.pl. Much
code shamelessly stolen from the old version (author unknown).
PPPPaaaaggggeeee 1111 [ Back ]