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

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

作为一套昂贵的字处理软件,Word里竟然不可用正则表达式,实在令人发指。不过他的查找替换里可以使用通配符(Wildcards),可以实现一部分的正则表达式功能。

例如:把所有email地址改写 mailto:xxx@gmail.com 的形式,可以用以下操作:
Ctrl-H
more
Use wildcards
Find what: ([a-zA-Z0-9.+_-]@\@[a-zA-Z0-9]@.[a-z]@)
Replace with: mailto:\1
然后替换就可以了。

一些常用的正则表达式(已含所有的 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


注:
re 代表一个正则表达式 (RegExp)
MS Word里多次匹配,最少是一次,没有0次。
\digit 指 \后面加数字 如 \1 \2
正则表达式里括号子表达式可以嵌套使用,Word里好像不行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值