The way you are doing it is pretty clean. At least, it would be if you cleaned it up like Aristotle suggested. You missed one detail though.
Your requirements stated that the words can be split up by one or more literal space " " or newline "\n". That's not what you are doing. You are splitting on a single \s. Nevermind that \s is a character class that contains more than literal spaces and newlines. It's probably what you want. (If not, use a custom character class.) You do, however, need to add a + and make that /\s+/ to split on "one or more" of them.
Update: As you are splitting, it is probably better to split ' ', ... than to split on /\s+/ as the latter will result in an initial null field in the case that there are leading spaces. Splitting on a literal space is a special case. See perldoc -f split for details.
-sauoq "My two cents aren't worth a dime.";
In reply to Re: Removing repeated words
by sauoq
in thread Removing repeated words
by abitkin
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |