我需要从收到的邮件中提取一个单词。
我在引用网站后使用了正则表达式,但它没有给出任何结果,也没有抛出错误。
示例:说明:示例文本
我只想要冒号后面的第一个单词。
{{1}}
答案 0 :(得分:1)
请注意,您的模式效果很好,但写得更好:
Description\s*:+\s*(\w+)
它将匹配Description
,然后是0 +空格,1 + :
个符号,再次是0或更多个空格,然后捕获到组1中的一个或多个单词字符(如字母,数字或_
符号)。
现在,Capture Group 1值存储在M.SubMatches(0)
中。此外,您无需运行.Test()
,因为如果没有匹配项,则无需迭代它们。你其实想要一场比赛。
因此,只需使用
Set M1 = reg1.Execute(Item.body)
If M1.Count > 0 Then
EAI = M1(0).SubMatches(0)
End If
M1(0)
是第一个匹配,.SubMatches(0)
是第一个群组中的文本。