c:\@Work\Perl\monks>perl -wMstrict -le "for my $s (',abcdefg,pqrstuv', ',abefg,pqrstuv', @ARGV) { my $t = $s; print qq{'$t'}; $t =~ s/,(?:.*?(cd))?.*?,/=$1=/; print qq{'$t' \n}; } " ',abcdefg,pqrstuv' '=cd=pqrstuv' ',abefg,pqrstuv' Use of uninitialized value $1 in concatenation (.) or string at -e line 1. '==pqrstuv'