2008年4月 7日
vbscript.dllと正規表現
職場のWindows2000サーバーをリプレイスしたら一部のASPが動かなくなり、
文字の繰り返しを表す正規表現演算子が不正です
とかいうエラーメッセージが出るようになってしまった
正規表現の非欲張り量指定子を使っているところがことごとく上手く動かない。
調べてみると、どうやら、アップデートの時に、vbscript.dllのバージョンアップが何故かうまくいっておらず5.1のままになっていたのが原因。
5.6のdllで上書きしようと試みると、「使用中のため上書きできません」のエラー。サーバーを再起動するわけにもいかず、泣く泣くコードを全て非欲張り量指定子を使わない形に書き換えた。洗い出しきれているかどうかちょっと不安。
しかし、「正規表現演算子が不正です」とか言って、不正なのはお前の正規表現エンジンなんじゃねーかと。まあ、バージョンが古いものに文句言って立って仕方が無いけどさ。
しかし、非欲張り量指定子が使えないのは結構痛い。折を見て、dllを上書きしたい。