我已经尝试了好几天,但一无所获。我只是试图匹配一个包含“v.”的短语,该短语周围有换行符和 em 或 en 破折号。
简单的英语表达是:
(NEWLINE or CARRIAGE RETURN) (any number of words) v. (any number of words) -
但是,Word 似乎找到了所有匹配项,而不是最小的匹配项,因此如果我执行以下操作:
[^13^11]{1}?{1,} v. ?{1,}[^+^=]
我会得到数十个甚至数百个错误的匹配。
以下是一些可供搜索的示例文本:
Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。
假阳性与其他假阳性
某物 v. 某物 - Ut enim ad minim veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat。
长名称公司诉其他长名称公司 - Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。 excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum。
我希望搜索匹配“Something v. Something”和“Longer Name Co. v. Other Long Name Co.”,不匹配其他内容。我不想匹配“False Positive”。
答案1
我现在明白了误报是如何表现的。尝试排除^13
似乎是可行的方法,但我看不出有任何方法可以做到这一点。
我认为您的需求超出了 Word 的功能。它的“通配符搜索”似乎很差,甚至不能称为正则表达式搜索。
出于好奇,我尝试在 OpenOffice.org Writer 中使用您的示例文本,这个正则表达式似乎正好符合您的要求:
^.+ v. [^-–]+ [-–]