# no regex in end pattern of flipflop $ echo "Curve4 " | perl -lne 'if (/Curve(\d+)/ ... eof) {print $1}' 4 # code similar to your example $ echo "Curve4 " | perl -lne 'if (/Curve(\d+)/ ... /^\s*/) {print $1}'