(?=expression) 後方一致指定(Ver7.33対応版)
特定の正規表現パターンの後に、さらに特定の正規表現パターンが続くことを指定しつつ、正規表現にヒットする文字列としては前方部分のみとするような指定が出来ます。
例えば、「abcxyz」という文字列を検索しつつ、ヒットする文字としては「abc」だけにしたいようなケースに使います。普通の検索では必要ありませんが、強調表示や置換の時に使うと便利です。
例えば「abc」の後に「xyz」が続きつつ、ヒットする文字列は「abc」だけにしたい場合は、
abc(?=xyz)
と指定します。
後方一致指定の後ろにさらにパターンを指定すると、両方のAND指定という意味になります。例えば、
abc(?=[a-z])([x-z])
と指定すると、a-zでなおかつx-zにマッチする文字列にヒットします。このような表記とタグ付き正規表見を組み合わせるといろいろ応用範囲が広がります。