That doesn't work. He doesn't want to match at all if theres any digits anywhere in the string (or so he says :). Try "abc 123" just for example. Sometimes its just not worth trying to do something in one regex, but you could simplify to this:
unless (tr/0-9//) {
my @words = /\w+/g;
print "@words\n";
}