regex - Excel VBA正则表达式错误

标签 regex excel vba

您好,我在使下面的正则表达式代码正常工作时遇到一些问题。 我收到应用程序未定义或对象未定义错误

文本框位于用户表单上。

错误发生在“Set allMatches = regEx.Execute(TextBox1.Text)”行上 不确定我错过了什么。

Dim regEx As Object

Dim allMatches As Object

Set regEx = CreateObject("VBScript.RegExp")
With regEx
        .IgnoreCase = True
        .MultiLine = False
        .Pattern = "\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2)[AM|PM]"
        .Global = True
End With

Set allMatches = regEx.Execute(TextBox1.Text)


If allMatches.Count <> 0 Then
    result = allMatches.Item(0).submatches.Item(0)
End If

最佳答案

好吧,经过一番谷歌搜索和查看后,我发现了问题: 其图案如下:

 .pattern = "\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2**)** [AM|PM]"

事实证明,如果模式无效,您将收到 5017 错误。

通过将“)”更改为正确的结束符“}”,错误得到解决。

 .pattern = "\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2**}** [AM|PM]"

我认为如果模式不匹配,那么你会得到错误的返回,但事实并非如此..

关于regex - Excel VBA正则表达式错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18345637/

相关文章:

php - preg_match 少于 5 个字符的单词

c# - 尝试替换空字符串时无法识别的转义序列

java - 防止正则表达式匹配斜线字符

vba - 从 VBA/Excel 打开 Google Chrome

excel - 在Excel列中查找连续的大写字母

Python 正则表达式问题和分组

java - ArrayIndexOutofBoundsException 处理数组

python - 如何在python中将不同的excel文件合并到一个具有不同工作表名称的工作簿中

excel - 使用 VBA 修改 ListBox

VBA 形状集合