VBA Griffin編
【2】正規表現で文字を置き換える
半角スペースを全角に置き換えるのはReplace関数を使いましたが、その他は正規表現を使ってHTMLにタグを挿入しました。
正規表現はなかなか奥深いので簡単に使用例だけを示します。
まず、VBEの参照設定でMicrosoft VBScript Regular Expressions 5.5を有効にします。以下のようにRegExpを定義して
.Patternプロパティでパターンを指示し、.Peplaceメソッドで置き換えを実行します。
Dim re As RegExp
Dim w_txt As String
Set re = New RegExp
re.Global = True '複数回のマッチを有効にしないと最初の1つだけ処理されることになる。
'&を&ampへ置き換える
re.Pattern = "&"
w_txt = re.Replace(w_txt, "&amp")
'行頭'以外の文字列を$1、'以降のキャリッジリターンまでの文字列を$2としてグループ化する。
re.Pattern = "([^']+)'([^\r]+)"
'グループ$1と$2に間にフォントの色設定タグを挿入する。
w_txt = re.Replace(w_txt, "$1<font color=""#008000"">'$2</font>")
Set re = Nothing