$ perl -MData::Dump -Mre=debug -le " dd( $_=qq{a\n\nb} ); s{^$\n}{boop}m; dd( $_ ); " "a\n\nb" Compiling REx "^%nn" Final program: 1: MBOL (2) 2: EXACT <\nn> (4) 4: END (0) anchored "%nn" at 0 (checking anchored) anchored(MBOL) minlen 2 Guessing start of match in sv for REx "^%nn" against "a%n%nb" Did not find anchored substr "%nn"... Match rejected by optimizer "a\n\nb" Freeing REx: "^%nn"