VB2005または2008のRegex.Replaceを使用して、HTMLテキスト内に指定したキーワードを含むIMGタグを削除したいと考えています。
以下のコードを実行してみましたが、
Dim keyword As String = "ng.gif"
Dim html As String = ""<IMG src=""ok.gif""><BR><IMG src=""ng.gif"">ここに画像がありました。"
html = Regex.Replace(html, "<IMG(.|\s)+?" & Regex.Escape(keyword) & "(.|\s)*?>\s*", "", RegexOptions.IgnoreCase)
プログラムが終了せず、ステップ実行で確認したら、Regex.Replaceの行の実行でおかしくなったようです。
Regex.Replaceのパターンの(.|\s)の部分を以下のようにすると動きました。
html = Regex.Replace(html, "<IMG.+?" & Regex.Escape(keyword) & ".*?>\s*", "", RegexOptions.IgnoreCase)
どこに問題があるか、ご指摘をお願いいたします。