• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAの正規表現で特定のフレーズの出現回数を数えるには?)

VBA正規表現で特定フレーズの出現回数を数える方法

このQ&Aのポイント
  • VBAの正規表現を使用して特定のフレーズの出現回数を数える方法について質問します。VBスクリプトでの正規表現を使ってプログラムを作成し、出現回数を表示することができますが、予想と異なる結果が表示されています。
  • 使用するVBAの正規表現は「VBScript.RegExp」で、指定したフレーズの出現回数を数えるためには、パターンとして該当するフレーズを指定する必要があります。
  • 上記のプログラムでは、変数「strPattern」に「お米.*国」というパターンを指定しています。しかし、実行結果では1回と表示されてしまい、2回と表示されないため、どのような修正が必要なのかについてアドバイスを求めています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Option Explicit Sub hoge() Dim objRegex, objMatches, objMatch As Object Dim intRslt As Integer Dim strSource, strPattern As String Set objRegex = CreateObject("VBScript.RegExp") strSource = "お米の国と呼ばれる日本。お米のお国処は、秋田" strPattern = "お米.*?国" '最短一致 With objRegex .Pattern = strPattern .ignorecase = True .Global = True 'コメント外す End With Set objMatches = objRegex.Execute(strSource) intRslt = objMatches.Count MsgBox (intRslt & "回") End Sub '最長一致,最短一致 'http://www.lightship.co.jp/FileVisor6/help/operation/regexp.htm

blackbrain
質問者

お礼

期待していた結果を求めることができました。ありがとうございました。

関連するQ&A