use strict; use warnings; while () { print "matched $_" if /^[^cat)(?:]/; } __DATA__ cat dog dog cat aardvark ant catnip dogbone frog cat dog mouse dog cat cat dog elephant can of worms