查找所有可能的首字母缩写词

时间:2019-01-11 03:50:24

标签: regex vba ms-word

我已经使用VBA创建了一个脚本来遍历Word文档,以查找可能是首字母缩写词的所有单词,但是我发现我的regEx模式找不到所有单词。

我正在使用的regEx模式是“([[AZ] {2,})(-([AZ] {2,}) [A-Za-z0-9]

有了这种模式,我就能找到

AA
AAA
AA-BB
AA-BBB
AAA-BB
AAA-BBB
AAA-1234
AAA-BBB-1234

但找不到这些单词

B2B
B2B-1234
B2B-A1A-1234

单词匹配的期望应该是第一个字符是字母,并且必须包含至少两个大写字母和至少一个数字。另外,如果单词中有破折号,则破折号之前的字符必须与单词match的期望匹配。

是否可以使用上面的regEx模式也包括字母数字字母的首字母缩写词?

1 个答案:

答案 0 :(得分:0)

Milco,欢迎来到StackOverflow。我认为以下正则表达式将为您工作:

([A-Z][A-Z0-9]+)(-[A-Z0-9]{2,})*

此正则表达式可容纳数字和可选数量的带连字符的术语,并匹配上述每个案例。我在regextesteronline.com进行了测试-我假设VB.net正则表达式与VBA相同,至少对于基本正则表达式,它们应该是相同的。

相关问题