Dreamweaver 正则表达式 批量替换

111 篇文章 0 订阅
例如下面的片断…
tppabs="http://www.****.net/images/thirdkind1.gif" class="style4">基础教程

我现在想把整个页面下的所有以tppabs=开头的并以第一个”为终止符的属性删除,可是手工操作太慢,没有效率,而且还易出错。

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

使用Dreamweaver的站点搜索替换功能。就是它,里面还有一个我们不会注意强大功能,使用正则表达式。呵呵,好了,我们的工具浮出水面,接下来就看怎么使用了!

查看了一下资料,找到如下内容:正则表达式是以文本描述字符组合的模式。在代码搜索中使用它们有助于描述一些概念,例如“以‘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 等来引用第一个、第二个、第三个和更后面的括号分组。

如:替换"/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[^"]*"
然后再根据自己的需要替换就行好了。真是很方便!

/

查找href="************"的表达式:\bhref="http\S*\b"

查找 href="8.html"的表达式 :\bhref="http\S*\bhtml\S*" [可以传参数]


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在DW(指代Adobe Dreamweaver)中输入正则表达式的快捷键可以大大提高工作效率。在DW中,可以使用以下快捷键来输入正则表达式: 1. 在打开的文件中,按下Ctrl + F (Windows)或Cmd + F(Mac),打开“查找替换”对话框。 2. 在该对话框中,选择“正则表达式”选项,这样就可以使用正则表达式进行搜索和替换。 3. 在“查找”或“替换”文本框中输入所需的正则表达式。 4. 通过使用正则表达式元字符和模式进行搜索或替换。 以一个例子说明,假设我们要查找文件中的所有邮箱地址,可以按照以下步骤进行: 1. 打开“查找替换”对话框,按下Ctrl + F(Windows)或Cmd + F(Mac)键。 2. 在对话框中选择“正则表达式”选项。 3. 在“查找”文本框中输入正则表达式:\b\w+@\w+\.\w+\b 。 该正则表达式可以匹配一个字符串,该字符串包括一个以字母或数字开头的单词字符组成的用户名部分,接着是一个@符号,再接着是一个以字母或数字开头的单词字符组成的域名部分,最后以一个点和一个以字母开头的单词字符组成的顶级域名结尾。 4. 单击“查找”按钮,以匹配第一个找到的邮箱地址。 5. 若要替换找到的邮箱地址,可以在“替换”文本框中输入一个新的邮箱地址,并点击“全部替换”按钮,该按钮会将所有找到的邮箱地址替换为新的地址。 通过使用上述快捷键和正则表达式,可以在DW中更加方便和高效地进行复杂的搜索和替换操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值