求解:VBA正则表达式,为什么这个匹配不出来
VBA代码如下,运行后提示错误5017,应用程序定义或对象定义错误
程序代码:Sub 正则匹配()
Text = "电信手机号18158885555 电信支付宝绑定号码13345626621617 匹配号码15917777777以上"
With CreateObject("Vbscript.Regexp")
.Global = True 'True表示匹配所有, False表示仅匹配第一个符合项
.IgnoreCase = True 'True表示不区分大小写, False表示区分大小写
.Pattern = "(?<=\D)1\d{10}(?=\D)" '匹配字符模式
Set mMatches = .Execute(Text) '执行正则查找,返回所有匹配结果的集合,若未找到,则为空
For Each mmatch In mMatches
MsgBox mmatch.Value
Next
End With
End Sub用下面的测试工具测试,却可以匹配出来
https://
问题出在哪里呀- -




谢谢大佬,能解释一下为什么吗,难道正则表达式的规则也分很多种吗,我看的是那个测试网站的教程,怎么用它的测试工具可以匹配出来用VBA就不行呢