我对 Word 中通配符的用法了解甚少。
通配符 - 区分大小写
寻找
输入标记 ^13 制表符 ^t 任意小写字母 [az] 任意大写字母 [AZ] 任意字母 [Az] 任意数字 [0-9] 6–9 之间的任意数字 [6-9] d–k 之间的任意字母 [dk] 任何单词仅包含字母 ([Az]@>) 任何仅包含数字的单词 ([0-9]@>) 用于分组(用于替换)() ... 之间的任意字符 (*) 任意段落 ^13(*)^13
取代
替换第一组 \1 替换第二组 \2 输入标记 ^p 制表符 ^t
我想了解更多相关信息。有人能帮助我吗?
答案1
改编自本文
搜索运算符:
?
- 任何字符。(正则表达式等效.
:)
例如:
d?g
查找dig
、dog
和dug
[-]
- 范围内的字符。(正则表达式等效:相同)
例如:
[a-m]end
查找bend
、fend
、lend
和mend
(此例中第一个字符是a
、m
或之间的任意字母)
<
- 单词的开头。(正则表达式等效项^
:)
例如:
<tele
查找telemarketing
、telephone
和television
>
- 单词结束。(正则表达式等价于$
:)
例如:
tion>
查找aggravation
、inspiration
和institution
()
- 表达式。(等同于正则表达式(?:)
:)
示例:允许您在搜索词中“嵌套”搜索表达式。例如,
<(pre)*(ed)>
要查找presorted
并prevented
[!]
- 不是。(等同于正则表达式[^]
:)
示例:查找文本但排除括号内的字符;
t[!ae]ll
查找till
andtoll
但不查找tall
andtell
{n}
- 出现次数。(正则表达式等效:相同)
{
示例:查找紧接在;之前的字母的指定出现次数,但不会to{2}
查找too
andtool
to
{n,}
- 出现次数。(正则表达式等效:相同)
示例:
,
在数字后添加 a 表示 Word 至少查找该次数;a{4,}
表示连续查找四个或更多个字母 a
{n,n}
- 出现次数。(正则表达式等效:相同)
例如:
10{2,3}
找到100
and1000
但没有10
@
- 前 1 个或更多。(正则表达式等效项+
:)
示例:查找紧接在 之前的一个或多个字符
@
;^p@^t
查找一个或多个段落分隔符,后跟制表符
*
- 0 个或更多字符。(正则表达式等效项.*
:)
示例:查找包含一个或多个指定字符的单词,或不包含任何指定字符的单词;
des*t
查找descent
、desert
、dessert
和destruct
[]
- 指定字符之一。(正则表达式等效:相同)
例如:
b[aeiou]t
查找bat
、bet
、bit
和but
[!a-z]
- 除括号内的范围内的字符之外的任意单个字符。(正则表达式等效项[^a-z]
:)
例如:
m[!o-z]st
找到mast
andmist
但找不到most
ormust
答案2
这看起来像一个非标准的符号常用表达,通常缩写为正则表达式或者正则表达式。如果您从事任何严肃的文本处理工作,这是一个非常重要的工具。正如您已经了解的那样,正则表达式允许强大的模式匹配和替换。您提供的符号与标准非常相似,所以我能认出它。有一个行业标准,POSIX,以及一个事实上的标准,Perl regex。下一段是无聊的历史,如果您愿意,可以跳过它。
POSIX 正则表达式用于 POSIX 兼容操作系统(例如 Linux 及其不太遥远的亲戚)的许多面向用户的工具中。典型示例是grep
,它允许您在文件中搜索文本。要匹配的文本在正则表达式中指定。编程语言 Perl 采用了这一概念并大大扩展了它的功能。后来,此功能的一个子集作为代码库提供,聚合酶链反应. 各种各样的软件都嵌入了这个库,最显著的是文本编辑器。
我发现上面的符号与我习惯的符号有些不同。Word 中转义序列的符号是^
,通常是\
。“仅数字”经常使用,因此它在 Perl 中有一个缩写,即\d
相当于字符类[0-9]
;同样,\w
表示单词字符 ,相当于[0-9a-zA-Z_]
。Word 的符号与之相比显得很麻烦。我不知道 Word 的其他限制,所以我鼓励你切换到支持 PCRE 的文本编辑器。
您应该首先了解空格匹配(缩写\s
)和重复(+
和*
)。Perl 的正则表达式解释如下佩尔雷奎克,佩尔雷图和珍珠岩。要立即开始尝试,请使用基于 Flash 的正则表达式。
答案3
万能牌就像拼字游戏中的空白棋子,或者像某些纸牌游戏中可以代替任何牌的百搭牌。您可能已经熟悉“”和“?”文件匹配通配符:在文件 + 打开对话框中,您可以通过输入“.doc” 或者所有文件“01062001.doc”、“01072001.doc”、“01122001.doc”... 通过输入“01??2001.doc”。
但是 Word 中的通配符功能远不止于此,而且非常强大。
首先,您必须在“查找/替换”对话框中启用通配符。为此,请打开“查找”对话框,单击“更多”,然后选中“使用通配符”。在宏中,设置 .Find.MatchWildcards = True。如果不这样做,Word 会将通配符视为普通文本。
我们稍后会看到,您可以定义范围 []、组 ()、重复 @、{}、锚点 < > 和例外 !。使用这些正则表达式,您可以在文本中搜索具有某些共同点的模式(某些模式:例如,它们仅包含某些字符或一定数量的字符)。
注意:Word 使用“懒惰”模式匹配:这意味着它会尽快退出匹配。大多数 Unix 工具使用“贪婪”模式匹配(算法会尝试匹配尽可能多的文本),因此如果您使用过此类工具,请当心!
使用通配符搜索的秘诀是使用“模式”来识别您想要查找的文本字符串,并忽略其他所有内容。通配符用于表示该字符串中的字符或字符序列。
由于不同的字符组合可以用各种通配符组合来表示,因此通常有多种方法来识别文档中的特定文本字符串。因此,如何选择表示该组字符通常取决于个人喜好;文档中文本的上下文将在很大程度上决定在特定场合使用的最合适组合。
以下是通配符搜索中具有特殊含义的字符列表 ( [ ] { } < > ( ) - @ ? ! * \ )。
注意:通配符搜索区分大小写。
Word 帮助文件中的通配符列表几乎无法找到,这毫无帮助!本文列出并描述了所有通配符,但如果您需要在帮助中找到它们,则主题为:“为要查找的项目键入通配符”。但您无法直接找到该文章;您必须先找到主题:“使用通配符微调搜索”,其中包含指向该主题的链接!
禅宗提示:使用通配符搜索时:不要皱着眉头或咬着舌头思考——你必须保持正则表达式。:-|
答案4
我认为在 Word 文档中搜索和替换文本时,Word 通配符的作用非常有限。普通正则表达式更可靠,并且有许多网络资源和论坛可以帮助创建正则表达式和学习语法。
最近,我开发了一个特殊工具,允许使用 .NET 正则表达式在 Word 文档中搜索和替换文本。该工具称为“多重查找和替换”工具,它是 Microsoft Word 的 TransTools+ 插件的一部分:http://www.translatortools.net/transtoolsplus-multiplereplace.html
例如,如果您需要将 [b]text[/b] 替换为粗体格式的“text”,则需要使用以下参数。
1)打开多个查找和替换工具
2)使用以下参数添加新的搜索和替换表达式。
模式:正则表达式
查找内容:[[bB]](.+?)[/[bB]]
替换为:$1
替换时应用特定格式:粗体 - 是
添加搜索和替换表达式后的“多个查找和替换”窗格的屏幕截图: http://prntscr.com/nj0286
3) 单击“全部替换”立即执行替换,或单击“查找全部”查找所有出现的情况以决定需要替换的内容。
替换前的文字: http://prntscr.com/nj02jc
替换后的文字: http://prntscr.com/nj02qh
您可以在此处找到该工具的一些使用示例及其功能描述:http://www.translatortools.net/news/transtoolsplus-v1-1.html
斯坦尼斯拉夫