Word的查找中通配符的使用问题
? 任意单个字符* 任意多个字符>单词边界[] 多个字符中的一个[-] 一定范围内的任一字符[^x-z] 非{n} N个重复{n,} N个或N个以上(greedy!){n,m} N个到M个@ 一个或一个以上(同{1,},从效果来看是non-greedy)搜索框支持反向引用:(abc)\1 =>abcabc替换框支持引用匹配pattern的个数最大为9,从1开始:(1)(2)(3)(4)(5)(6)(7)(8)(9) =>\1\2\3\4\5\6\7\8\9不支持\0让我觉得有点郁闷,不过可以将整个串都用括号括起来……但……请见下文不支持的模式:Nested tagged expressions: ((a)(b)); (不支持嵌套标签)Non-capture groups; (不支持非捕获组,像(?:pattern)这些)Alternation: a | the; (不支持“或”)
WORD中什么是搜索通配符
Word中通配符怎么用?使用MicrosoftWord可以查找和替换文字、格式、段落标记、分页符(分页符:上一页结束以及下一页开始的位置。
MicrosoftWord可插入一个“自动”分页符(或软分页符),或者通过插入“手动”分页符(或硬分页符)在指定位置强制分页。
)和其他项目。
可以使用通配符和代码来扩展搜索。
Word中通配符应用1.“?”该通配符可以用来代表任意单个字符,当大家不清楚查找目标中指定位置的内容是什么的时候,就可以用“?”来代替。
注意一个“?”只能代表一个未知字符。
如果要查找不止一个字符,可以用多个“?”来通配表示。
但是如果我们不知道到底有多少个字符,该如何使用呢?如果是这样,就必须要用到下面这个通配符了。
2.“*”该通配符可以用来代替任意多个字符。
比如我们输入“*n”,系统就会自动找出所有以“n”结尾的单词或字符集,而不管它前面有多少个字符。
3.“*[/该通配符可以表示单词的开头。
如输入“4.“*[/>”该通配符可以表示单词的结尾。
如输入“(er)>”,系统会自动查找以“er”结尾的单词,如“thinker”,但不查找“interact”。
5.“*[/[x1x2... ]”(x1,x2表示任意字符)该通配符可以指定要查找该括号内(x1,x2…)的任意字符。
如输入“m[ae]n”,则系统会查找“man”和“men”。
6.“*[/[x1-x2]”(x1,x2表示任意字符)该通配符可以设置指定范围(x1到x2之间, 包括“x1”和“x2”)内任意单个字符。
如输入[r-t]ight ,则系统会查找“right”和“sight”。
(即在“r”和“t”之间的任意单个字符)。
需要注意的是。
括号内的字符要按升序的方式来排列。
如不能输入“[t-r]ight”来表示该范围。
7.“*[/[!x1-x2]”(x1,x2表示任意字符)该通配符可以设置括号内指定字符范围(x1到x2之间,不包括包括“x1”和“x2”)以外的任意单个字符。
如输入“t[!a-m]ck”,则系统就会查找到“tock”和“tuck”,但不查找“tack”和“tick”。
8.“*[/{n}”(n表示正整数)该通配符表示n个重复的前一字符或表达式。
如输入“ro{2}m”查找“room”,但不查找“rom”。
9.“*[/{n,}”(n表示正整数)该通配符表示至少 n个前一字符或表达式。
如输入“fe{1,}d”,则系统会查找“fed”和“feed”。
10.“*[/{n,m}”(n,m表示正整数)该通配符表示n到m个重复的前一字符或表达式。
如输入“20{1,3}”查找“20”、“200”和“2000”。
小提示:在使用过程中需要注意四个方面:(1)在使用通配符时我们可使用括号对通配符和文字进行分组,以指明处理次序。
例如,可以通过键入“”来查找“presorted”和“prevented”。
(2)可使用“\n”通配符来搜索表达式,然后将其替换为经过重新排列的表达式,例如,在“查找内容”框键入“(Newton)(Christie)”,在“替换为”文本框键入“\2\1”,Word 将找到“Newton Christie”并将其替换为“Christie Newton”。
(3)在选中“使用通配符”复选框后,Word 只查找与指定文本精确匹配的文本(请注意,“区分大小写”和“全字匹配”复选框会变灰而不可用,表明这些选项已自动选中,不能关闭这些选项)。
(4)如果要查找已被定义为通配符的字符。
请在该字符前键入反斜扛(\),例如,要查找问号,可键入“\?”。
word通配符如何查找替换目录?
1、章节查找替换,但是需要更改章节的数目;不断的查找替换;如果用通配符"第?章"可以查找,替换的话,就会出现“第一章”变成"第?章";2、如果是一、二、三这样开头的小章节,如果是另起一行开头的,查找替换的时候,可以在前面加个段落符号(回车键),一起查找替换。
也是需要不同的数字(一、二、三等)分别查找替换。
3、不知道对你有没有帮助,你自己试试,说不定能找到更好的办法。
关于word的通配符查找替换
在查找之前,我们要做的事是,“编辑”→“查找”→“高级”,点选“使用通配符”之后,在“查找内容”框内填上要查找的文字和通配符。
关于通配符的用法: 1.“”: ①关于“>”。
使用该通配符可以用来指定要查找对象的结尾字符,比方说,要是你记不清所要查找对象的完整内容了,但记得要查找对象的结尾字符是某个特定的字符,此时大家就可以用“>”附在这个特定字符的后面,然后Word就会自动去查找这个特定字符,从而让我们看到我们要找的目标。
例如,在查找对话框中输入“up>”的话,Word查找工具就会在当前文档中查找到以“up”结尾的所有目标对象,例如会找到“setup”、“cup”等等对象。
如果查找的是汉字目标,我们要注意的是,查找的汉字应该是结尾字词(后面应该有标点符号分隔)...在查找之前,我们要做的事是,“编辑”→“查找”→“高级”,点选“使用通配符”之后,在“查找内容”框内填上要查找的文字和通配符。
关于通配符的用法: 1.“”: ①关于“>”。
使用该通配符可以用来指定要查找对象的结尾字符,比方说,要是你记不清所要查找对象的完整内容了,但记得要查找对象的结尾字符是某个特定的字符,此时大家就可以用“>”附在这个特定字符的后面,然后Word就会自动去查找这个特定字符,从而让我们看到我们要找的目标。
例如,在查找对话框中输入“up>”的话,Word查找工具就会在当前文档中查找到以“up”结尾的所有目标对象,例如会找到“setup”、“cup”等等对象。
如果查找的是汉字目标,我们要注意的是,查找的汉字应该是结尾字词(后面应该有标点符号分隔)。
②关于“”正好是相对的一组通配符,所以,我们可以用它来查找以某字母开头的对象。
2.“@”:该通配符可以用来查找字符中包含一个以上的前一字符。
例如,如果输入“me@n”的话,Word查找工具就可以找到“men”、“meen”之类的字符内容了。
3.“?”:“?”代表任意单个字符,当大家不清楚查找目标中指定位置的内容是什么的时候,就可以用“?”来代替,几个“?”就代表几个未知字符。
例如,在查找对话框中输入“?土”的话,Word查找工具就可以找到类似“黑土”、“黄土”之类的目标内容;输入“??土”的话,就能找到“五色土”之类的内容。
4.“*”:“*”可以用来代替任意多个字符,比如我们输入“*国”,就可以找到“大国”、“法兰西国”、“中华人民共和国”等字符串内容。
5.“[]”:该方框内的单个字符可以是指定要查找的字符之一,例如要是输入“[高矮]个”的话,Word查找工具就可以找到“高个”、“矮个”等内容。
6.“{}”:可以用来指定要查找的字符中包含前一字符的个数,比如输入“lit{1}le”就是说包含1个前一字符“t”,可以找穿场扁渡壮盗憋醛铂互到“litle”,输入 “lit{2}le”就是说包含2个前一字符“t”,可以找到“little”。
7.“[-]”:该通配符是用来指定范围内的任意单个字符,要是在查找对话框中输入“[a-c] mend”的话,Word查找工具就可以找到“amend”、“bmend”、“cmend”等字符内容。
通配符可以单独使用,但我们还可以把多个通配符使用一定的技巧组合起来,这样就可以使查找达到更精确的效果,比方说我们输入“”,就表示查找的是所有以“江山”开头并且以“多娇”结尾的字符串,当然,具体如何组合,就需要我们在以后的学习和实践中去摸索了。
关于Word VBA查找替换(含通配符)的问题
<; 标识单词开始,也就是说这里要匹配一个整词,前面要么是空格,要么是标点符号等。
(Subject) 匹配“Subject”这个单词。
用圆括号括起来的是让它成组,同时本来也可以在替换内容中通过“\1”来指代它。
但是我看粘贴出来的代码里面替换内容为空,所以我觉得这个圆括号可有可无。
\\ 匹配“\”这个字符。
因为“\”本身在查找控制字符里面具有特殊的控制意义(转义),所以要匹配它自己就必须在前面再加一个“\”进行转义。
* 匹配0到任意多个任意字符([^11^13]){1} 匹配一个换段符(^13,在文档里面是直接键入ENTER得到)或者一个段内换行符(^11,在文档里面键入SHIFT+ENTER得到)。
方括号的意思是匹配方括号里面这个集合中的任意字符。
“{n}”表示匹配n次,所以“{1}”就是匹配1次了。
至于那个圆括号,和上面提到的圆括号的功能相同,同样我觉得这里使用是多余的。
整句话的意思,就是要找到形如“Subject\ajdslfjasdlf”文字,且它后面必须是一个换段或者段内换行。
__________________补充:楼主说的没错,^11^13在这里是可以理解成或者的关系。
请问楼主提到的需求中,title后面是不是一定会有一个回车?如果是这样的话,可以直接在Word查找替换对话框中用这个查找串: <Subject*\\<([!\\]@)[^11^13] ,替换为:\1 。
选中通配符后做全部替换即可。
应该是不需要VBA的吧?楼主可以先试试看,如果不行我再想办法。
___________________再补充:([!\\]@) 的意思就是匹配一个不包含“\”(这个由“[!\\]”来控制)的字符串,这个字符串由至少一个字符组成(这个由“@”来控制)。
所以,我的整个查找串的意思就是,查找一个“Subject”开头,后面有若干字符,最后一个反斜杆的后面有一个字符串,再往后就是一个回车。
当然,如果不想用通配符,当然自己写代码也是能做到了。
但是就得自己去分析整个字符串,会需要考虑很多因素和可能的变化,代码会写得很复杂。
此外,Word查找替换的通配符,是Word中很重要的一个功能,掌握它能够为平时的工作带来的很大便利。
所以还是值得去研究一下的。
其实我就是看Word自带的帮助啊……在Word里面键入F1,然后输入关键字“查找替换”,好象返回的第一条就是我看的那个帮助,里面有这些控制符号的解释。
不过Word的查找替换对于模糊查询的支持总的来说还是比较弱。
要想做到更精确、更复杂的搜索条件,还是需要用到正则表达式。
这个可以在网上搜索一下“VBA 正则表达式”。
转载请注明出处51数据库 » word查找通配符或
劈腿的年代跟我谈什么真爱