in reply to Breaking a loop after a valid match + proper use of /t delimiter.

I'm not sure, as dvergin also mentioned, that I understand what 4) is about. But I'll try a generalized answer that may help. I find that I seldom use the / / argument of the split command. The  split " ", $var is much more useful. Notice in the following example that it strips out multiple instances of whitespace (from the beginning of the string as well):
use strict; my @lines = <DATA>; chomp @lines; foreach (@lines) { my @words = split " ", $_; print "\$_: '$_'\n"; foreach (@words) { print "'$_' "; } print "\n\n"; } __DATA__ Delimit each word with one or more spaces This is the second line
Output:
$_: ' Delimit each word with one or more spaces' 'Delimit' 'each' 'word' 'with' 'one' 'or' 'more' 'spaces' $_: ' This is the second line' 'This' 'is' 'the' 'second' 'line'
Note also that the following shorter version for the above will work also:
my @words = split;

--Jim