while() { chomp; print "$_ => @_\n" if @_= /(abc|xyz)(?=(?:...)*$)/g; } __DATA__ abcmmmnnn mmmxyznnn mabcmxyzm xyzfooabc __END__ abcmmmnnn => abc mmmxyznnn => xyz xyzfooabc => xyz abc