我正在尝试使用正则表达式在 VBA 中进行模式匹配。我添加了对正则表达式库的引用,并使用以下代码作为测试。
Sub testing()
Dim re
Dim val
Set re = New RegExp
re.Pattern = "[0-9]{5}"
re.IgnoreCase = True
val = Range("A8").Value
MsgBox val
MsgBox re.Test(val)
End Sub
问题是,当我测试格式化为的字符串时:
1234 565 4444543 12 33
我在使用 {5} 时收到“True”,而在使用 {6} 时收到“False”。为什么是这样?
在这种情况下,{5} 和 {6} 不应该都返回“False”吗?
如果 RegEx 在空格上匹配,我该如何防止这种情况?我想匹配正好 4 个数字,后跟恰好一个空格,后跟正好 3 个数字,等等。
帮助!