MS Word VBA搜索文本与查找通配符

时间:2011-09-13 21:05:08

标签: regex ms-word word-vba

我需要使用带有通配符的“ms word find”找到这些匹配项:

{{1,000.00}}
{{-125}} 
{{125-}} 
{{-1’100.00}}  
{{1’100.00-}}  

Selection.Find.Text 应该是什么?

我试过了:

[\{]{2}<*>[\}]{2}

但它对某些单词不起作用。


这个通配符几乎完全符合我的需要。我修改了一点以排除段落返回^ 13 [\{]{2}[!\}][!^13]@[\}]{2}

但是我在匹配像blabla {{2}} {{-2-}} blabla这样的段落时遇到问题,在这种情况下,它匹配整个段落({{2}} {{-2-}}),然后匹配{{-2-}}

有人可以告诉我原因,以及我需要在通配符中更改的内容吗?

1 个答案:

答案 0 :(得分:1)

<>字边界通配符。为了让它们起作用,大括号内的第一个和最后一个字符必须是字母或数字(或者Word Find认为是“单词”字符)。试试这个:

[\{]{2}[!\}]@[\}]{2}

[!\}]@应匹配除}之外的任何字符中的一个或多个。