CSDN博客

img ilmself0451

使用DreamweaverMX2004的搜索替换功能提高工作效率。

发表于2004/9/20 22:46:00  842人阅读

Dreamweaver MX 2004中使用正则表达式

小弟近来使用Teleport Pro软件下载一个纯html的静态网站(,不知道称呼它为静态网站是否合适,先这样将就着吧).下载下来

之后,发现里面多了好多的冗余信息,例如下面的片断

 

tppabs="http://www.****.net/images/thirdkind1.gif" class="style4">基础教程

 

红色部份是多余的数据, 我现在想把整个页面下的所有以tppabs=开头的并以第一个为终止符的属性删除,可是手工操作太慢,没

有效率,而且还易出错。

 

我第一个想到的就是使用搜索替换,可是什么软件的效率能最高呢?

使用DreamweaverMX 2004的站点搜索替换功能。就是它,里面还有一个我们不会注意强大功能,使用正则表达式。呵呵,好了,

我们的工具浮出水面,接下来就看怎么使用了!

 

查看了一下资料,找到如下内容:

 

正则表达式是以文本描述字符组合的模式。在代码搜索中使用它们有助于描述一些概念,例如‘var’开始的行包含数字的属

性值

下表列出了在正则表达式中使用的特殊字符、其含义和用法示例。若要搜索包含该表中某一特殊字符的文本,请在特殊字符前面附加

一个反斜杠,令其转义。例如,若要在 some conditions apply* 短语中搜索实际的星号,您的搜索模式应类似于:apply/*

如果您没有令星号转义,您将找到“apply”的所有匹配项(以及“appl”“applyy”“applyyy”的所有匹配项),而不只是后面跟

有星号的那些匹配项。

 

字符

匹配

示例

^

输入或行的起始部分。

^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%”中的“%”

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

的括号分组。

 

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

 

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

/btppabs="h[^"]*"

 

然后进行搜索替换操作就OK了!呵呵有时很不起眼的功能,往往能很大程度上地为我们节省时间,提高工作效率。我希望这文可以引

玉,大家多多试验,相信一定会为您的开发和使用带来无尽的便利。

=============================================================================================================
回复[jhyc]: 试试这个吧.e[e]*e 再简单点,可以使用e[e]+ | e+e | e+ 不知道是不是你要的结果 . 我不推荐使用e+这种形式,因为这个效率不高,它的搜索结果中包含单个字符e的情况.

0 0

相关博文

我的热门文章

img
取 消
img