使用 Word 2013 ...
假设我有一个文档,其中段落标记之间有很多相似但不完全相同的文本实例,如下所示:
文本 文本 文本 ¶
某物XYZ某物¶
文本 文本 文本 ¶
stelseXYZstelse ¶
文本 文本 文本¶
第三XYZ第三¶
文本 文本 文本¶
... 等等。
我想用一对段落标记¶¶替换其中包含“XYZ”的行(或者换句话说,删除该行上的所有文本)。
我最初的努力是使用带有通配符的“查找/替换”以及以下内容(假设“XYZ”不必区分大小写)。
查找:^13*xyz*^13
替换为:^p^p
不幸的是,Word 从遇到的第一个 ¶ 开始,并选择到下一个“XYZ”的所有文本(包括中间的段落),然后继续直到“XYZ”之后的下一个 ¶。
我环顾四周,没有找到一种方法来表达“最接近给定字符串的¶”。
有任何想法吗?
谢谢!
答案1
您可以在搜索中排除两个 ^13 之间的非 ^13 字符,如下所示:
^13[!^13]@XYZ[!^13]@^13
@ 表示“前一个字符出现一次或多次”,而 !(感叹号)则排除括号内的字符。问题是“XYZ”、“XYZ”、“XYZ ”均不匹配,因此在使用前请先将“XYZ”替换为“XYZ ”。遗憾的是,没有办法告诉 Word“前一个字符出现零次或多次”。