投稿時間:2004/06/03(Thu) 16:38 投稿者名:フレ
URL :
タイトル:「VBScript.RegExp」以外の正規表現ライブラリ
こんにちは。 フレです。
VB6で正規表現を使う場合のライブラリについて 質問があります。
ターゲットが Windows2000 および WindowsXP の アプリケーションを作成しています。
正規表現を使った方がかなり楽な処理があったので 雑誌やネットでよく使われている「VBScript.RegExp」を使って処理を実装しました。
正規表現は以下の3通りの使い方をしています。
@正規表現のパターンと一致するかどうかのチェック A正規表現のパターンに一致した部分の文字列置換 B正規表現のパターンに一致した部分の文字列取得
これまで特に問題なく動作していたので 気にしていなかったのですが 先日、Windows2000の一番初期のインストールCDで 再インストールしたマシンでアプリケーションを動かしてみたところ、 正常に動作しないことがわかりました。
調べてみると「VBScript.RegExp」は、 C:\WINNT\system32\vbscript.dll に含まれているようです。
vbscript.dll は、IEおよびWSHをアップデートおよびインストールすることで DLLのバージョンもアップするようなのですが、 初期のWinsows2000には バージョン5.1.x.xxxx になっていて そのバージョンだと「VBScript.RegExp」クラスが存在しないようです。
IE5.5以上をインストールしている環境では バージョンが 5.6.x.xxxx 等になっていて 「VBScript.RegExp」クラスが存在します。
開発環境では、Windows Update 等を定期的に実施しており IEのバージョンもほぼ最新を使用しているので 気づくのが遅れました。 ※要は事前調査不足です(−−;)
そこで質問なのですが VB6で「VBScript.RegExp」以外の正規表現のライブラリを ご存知の方はいらっしゃいませんでしょうか?
もしくは、上記の事象を上手く解決する方法など ご存知の方がいらっしゃたら教えてください。
WSHのインストーラは600Kと軽いので アプリケーションと一緒に配布する案も考えたのですが Microsoft社のホームページで確認したところ、 再配布はNGのようですので解決する方法で悩んでいます。
ブラウザとか関係ないアプリケーションなのに IE5.5以上とかの制約が付くのはやだなーっと思っているのですが...
以上です。 よろしくお願いします。
|