Perlの正規表現を少し お勉強しました。



MIFESの正規表現にはなく、食いついてしまったのは

先読み と 後読み という記号で、それぞれに肯定と否定があるので4パターンあります。



あるワードを探したいけど、

その前や後ろにある別のワードによっては

いらんねん みたいなときに便利なのです。



例えば、



甲府市 や 京都府 ではなく、

大阪府 の 府 だけ見つけたいとか、



メガソフトZ や マジンガーZ のZは 見つけたいけど

ドラゴンボールZの Z は 見つけなくていいとか、



です。


今日は大量のHTMLファイルの

lang="en の en を ja に


書き換えなければならず、


enは意外とあちこちの単語の中に潜んでおり

大変お世話になりました。



ちなみに、これ↑、activePerlの正規表現では



(?=lang=")en


と書きます。




(?=XXXX)

?= 部分が 後読み肯定 の記号(メタ文字)。




まず、 en を探した後で その前を読んでみて、


そこがlang="だったら(肯定)、まさしくソレデス!


前にも書きましたが、


正規表現が ピタリ とヒットするとむちゃくちゃ気持ちいいので


MIFESの 正規表現
 も使ってみてくださいね。