> ■この文字列を含まず、この文字列は含めた行を抽出したい!
・ヒットする
abcdeabcde含めたい文字列abcde
・ヒットしない
abcde含めたくない文字列abcde含めたい文字列abcde
■正規表現で表すと
^(?!.*①)(.*)(②)(.*)$
①含めたくない文字列
②含めたい文字列
置換するときは、
$1置換したい文字列$3
とする。
理由がわからないが、正規表現を含まない文字列は、()でくくっても変数$xのインデクスには加わらないようだ。
だから、抽出時の正規表現は次でよかった。
^(?!.*①)(.*)(②)(.*)$ → ^(?!.*①)(.*)②(.*)$