5

VBA (Excel 2003) を実行しており、ポジティブな後読み正規表現パターンをテストしています。以下の関数を実行しますが、次のエラーが発生します。

Run-time error '5017': Method 'Execute' of object 'IRegExp2' failed

私も試しまし Set re = CreateObject("vbscrip.regexp")
たが、同じエラーが発生します。私はいくつかの肯定的な先読みをうまくテストしましたが、それらは機能します。問題があるのは後読みだけです。以下のパターンを Expresso でテストしたところ、問題なく動作しました。これはVBA特有の風味の問題でしょうか?

Function regexSearch(pattern As String, source As String) As String
Dim re As RegExp
Dim matches As MatchCollection
Dim match As match
'Create RegEx object
pattern = "(?<=a)b"
source = "cab"
Set re = New RegExp
   re.Multiline = False 
   re.Global = True
   re.IgnoreCase = False
   re.pattern = pattern
'Execute
Set matches = re.Execute(source)
'Output
For Each match In matches
   str = str & match & " "
Next match
regexSearch = str
End Function
4

1 に答える 1

5

これは (したがって ) に固有のものです。

は後読みをサポートしていません (負または正)

于 2012-09-25T02:06:46.877 に答える