有时候匹配上的词并不想要完全替换掉,今天查了一下发现可以用\1 \2这种方式来指代匹配字符串中的第一个或者第二个括号,就相当于保留下这部分内容。

例子比较笨拙,但是能说明这种用法。

例子原句:

Some words.中文翻译。

 

为了格式好看,在英文句号后加一空格

 

Find what:       (.)([! ])                  //匹配.和后面紧挨着一个非空白字符

Replace with:   . \2                       //注意中间有空格,\2表示引用第二个括号匹配的内容

 

 

一些常用的正则表达式(已含所有的 MS Word 可用的通配符)

含义 GNU grep GNU Emacs Perl MS Word
任何单个字符 . . . ?
符合其中的任一字符 [...] [...] [...] [...]
符合除此之外的任一字符 [^...] [^...] [^...] [!...]
子表达式 \(re\) \(re\) (re) (re)
表达式重复多次 re\{...\} re\{...\} re{...} re{...}
表达式出现0或1次 re\? re? re?
表达式出现0或多次 re* re* re*
表达式出现1或多次 re\+ re+ re+ re@
表达式出现0或1次(lazy mode) re?? re??
表达式出现0或多次(lazy mode) re*? re*?
表达式出现1或多次(lazy mode) re+? re+?
单词起始 \< \< <
单词结尾 \> \> >
单词边界(起始或结尾) \b \b \b
非单词边界 \B \B \B
任意字符串 .*
.*
.*
*
行首 ^ ^ ^
行末 $ $ $
换行符 \n C-q C-j \n ^13
”或“ re\|re re\|re re|re
引用上次找到的内容 不知道 \& 不知道 ^&
引用被括号捕获的内容 \digit \digit \digit \digit
含义 GNU grep GNU Emacs Perl MS Word
 \digit 指 \后面加数字 如 \1 \2

 

 

来源:在Word里使用部分正则表达式

相关文章: