教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 电脑教学 > 软件 >

Dreamweaver的利用正则查找替换功能提高效率(2)

时间:2012-08-08 14:15来源:未知 作者:ken 点击:

DW帮助中关于正则表达式的部分

正则表达式是以文本描述字符组合的模式。在代码搜索中使用它们有助于描述一些概念,例如“以‘var’开始的行”和“包含数字的属性值”。有关搜索的更多信息,请参见搜索和替换标签和属性。

下表列出了在正则表达式中使用的特殊字符、其含义和用法示例。若要搜索包含该表中某一特殊字符的文本,请在特殊字符前面附加一个反斜杠,令其“转义”。例如,若要在 some conditions apply* 短语中搜索实际的星号,您的搜索模式应类似于:apply\*。如果您没有令星号转义,您将找到“apply”的所有匹配项(以及“appl”、“applyy”和“applyyy”的所有匹配项),而不只是后面跟有星号的那些匹配项。

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”中的


使用过的几个 \d{1,6} 可以替换 1-6位任何数字排列 如:2、 52 、564 、9876、32014、35420
我要找sitemp、sitemp1 、sitemp12 、sitemp123 、就可以搜寻sitemp\d{0,3}

使用括号在正则表达式内分隔出以后要引用的分组。然后在“替换”域中使用 $1、$2、$3 等来引用第一个、第二个、第三个和更后面的括号分组。

如:替换"/main.asp?classid=286"替换成"class(286)"

查找:/main.asp\?classid=(\d+)

替换:class($1)

注意:在“查找内容”文本框中使用 \1、\2、\3 等(而不是 $1、$2、$3)来引用正则表达式中更早的括号分组。

下面是我使用的正则表达式。很好用:

\btppabs="h[^"]*"

然后进行搜索替换操作就OK了!

如此多的代码最好的办法就是匹配替换了。网上搜索了一下,发现竟然有位老兄遇到跟我一样的问题,按照他的办法,可以通过Dreamweaver的正则表达式匹配进行替换。在Dreamweaver的帮助里可以找到正则表达式中使用的特殊字符列表。
根据列表写出上面两句冗余代码的匹配是:
匹配tppabs标签:
\btppabs="h[^"]*"
匹配javascript代码:
href="javascript:if\(confirm\('htt[^"]*"
然后再根据自己的需要替换就行好

(责任编辑:ken)
TAG标签: Dreamweaver 正则
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
栏目列表
最新内容