- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:正規表現 Microsoft VBScript Regular Expression 5.5)
正規表現 Microsoft VBScript Regular Expression 5.5の挙動不審
このQ&Aのポイント
- Microsoft VBScript Regular Expression 5.5を使用していますが、挙動が不審です。
- 特定のパターンにマッチしない問題や、日本語に対応していない可能性があります。
- UNICODE依存の文字列の置換は問題なく行えるようですが、VBScriptをVBから使用することに関して、正しい方法かどうか疑問があります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Dim REFind As New RegExp これ、変じゃないですか? Dim REFind As Object Set REFind = New RegExp Dimでは変数を定義するだけですから、そのあとで定義した変数にRegExpオブジェクトをSetしてやる必要が有ると思いますが? >それとも、そもそもVBScriptとか書いてあるものをVBから使うのが間違い? RegExpオブジェクトはWindowsが公開しているオブジェクトですから、どの言語から利用しても間違いじゃありませんよ。 なお、RegExpについては、MSのScriptingテクノロジーのページから、Windows Scripting Hostのドキュメントをダウンロードして参照すると、MSDN全体から読み出すよりも簡潔に書かれているので、読みやすいと思います。
お礼
回答ありがとうございます。 Dim REFind As Object とすると、実行時バインドが起こるので、オーバーヘッドが起こります。 サンプルでは Dim REFind As RegExp Set REFind = New RegExp としてますが、再確保したり解放したりしない限りは私がやってるのと同じでしょう。 やはりリファレンスには、内部の処理の文字コードなどについては触れてないみたいですね。 他のところでももっと自分で調べてみることにします。