网站优化过程中,经常会遇到很多要批量修改的东西,一个个修改,明显效率低下。本文是使用DW正则表达式批量替换的一个实例
想法:想把<a href="#" target="_blank">BBBBBBB</a> 替换成 <a href="http://www.yourdomain.com/keyword.asp?=BBBBBBB" target="_blank">BBBBBBB</a>
如果“BBBBBBB”一样的话,那么简单,如果 内容不一样的话,就不能使用简单的查找替换功能了。那么就使用DW正则表达式批量替换吧。
要替换内容:
替换要达到的效果:
替换的正则表达式:
说明: (.\S+) ----用来替换A标签中的锚文本 {S为大写,代表任何单个非空白字符。}.
$1 则是引用A标签中的锚文本(.\S+)的参数。
注意:如果是非数字用(.\S+), 如果是数字则用d,也就是(.\d+)。
最终效果:
下面提供DW正则表达式表说明
字符
匹配
示例
^
输入或行的起始部分。
^T 匹配“This good earth”中的“T”,但不匹配“Uncle Tom's Cabin”中的“T”。
$
输入或行的结尾部分。
h$ 匹配“teach”中的“h”,但是不匹配“teacher”中的“h”
*
0 个或多个前置字符。
um* 匹配“rum”中的“um”、“yummy”中的“umm”以及“huge”中的“u”
+
1 个或多个前置字符。
um+ 匹配“rum”中的“um”和“yummy”中的“umm”,但在“huge”中没有任何匹配项
?
前置字符最多出现一次(即,指示前置字符是可选的)。
st?on 匹配“Johnson”中的“son”和“Johnston”中的“ston”,但在“Appleton”和“tension”中没有任何匹配项
.
除换行符外的任何单字符。
.an 匹配短语“bran muffins can be tasty”中的“ran”和“can”
x|y
x 或 y。
FF0000|0000FF 匹配 bgcolor=”#FF0000” 中的“FF0000”和 font color=”#0000FF” 中的“0000FF”
{n}
恰好 n 个前置字符。
o{2} 匹配“loom”中的“oo”和“mooooo”中的前两个“o”,但在“money”中没有任何匹配项
{n,m}
至少 n 个、至多 m 个前置字符。
F{2,4} 匹配“#FF0000”中的“FF”和“#FFFFFF”中的前四个“F”
[abc]
用括号括起来的字符中的任何一个字符。用连字符指定某一范围的字符(例如, [a-f] 等效于 [abcdef])。
[e-g] 匹配“bed”中的“e”、“folly”中的“f”和“guard”中的“g”
[^abc]
未在括号中括起来的任何字符。用连字符指定某一范围的字符(例如,[^a-f] 等效于[^abcdef])。
[^aeiou] 最初匹配“orange”中“r”、“book”中的“b”和“eek!”中的“k”
\b
词边界(例如空格或回车符)。
\bb 匹配“book”中的“b”,但在“goober”和“snob”中没有任何匹配项
\B
词边界之外的任何内容。
\Bb 匹配“goober”中的“b”,但在“book”中没有任何匹配项
\d
任何数字字符。等效于 [0-9]。
\d 匹配“C3PO”中的“3”和“apartment 2G”中的“2”
\D
任何非数字字符。等效于 [^0-9]。
\D 匹配“900S”中的“S”和“Q45”中的“Q”
\f
换页符。
\n
换行符。
\r
回车符。
\s
任何单个空白字符,包括空格、制表符、换页符或换行符。
\sbook 匹配“blue book”中的“book”,但在“notebook”中没有任何匹配项
\S
任何单个非空白字符。
\Sbook 匹配“notebook”中的“book”,但在“blue book”中没有任何匹配项
\t
制表符。
\w
任何字母数字字符,包括下划线。等效于 [A-Za-z0-9_]。
b\w* 匹配“the barking dog”中的“barking”以及“the big black dog”中的“big”和“black”
\W
任何非字母数字字符。等效于 [^A-Za-z0-9_]。
\W 匹配“Jake&Mattie”中的“&”和“100%”中的“%” |