这些天要帮人改版网站,说是改版,其实是叫我把别人网站里的界面原物搬下来。用Teleport pro对某站点整站下载之后,用Dreamweaver打开,发现代码里有大量的冗余代码,比如:

< tppabs="http://www.****.com/images/bg.gif" style="font-size:12px;">

中的tppabs标签(估计是Teleport pro为了方便其自身更新时加上的标记)

<a href="javascript:if(confirm('http://www.xxx.com/bbs/  \n\n文件并未依 Teleport Pro 取回,因为 服务器报告因为错误的发生导致无法读取。  \n\n你要从服务器上打开它吗?'))window.location='http://www.xxx.com/bbs/'" >

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

href="[^"]*"搜索的是所有的href连接

href="h[^"]*"搜索的是所有以h开头的href连接

正则表达式是以文本描述字符组合的模式。在代码搜索中使用它们有助于描述一些概念,例如以“以‘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%”中的“%”

Ctrl+Enter 或 Shift+Enter (Windows)、或者 Ctrl+Return 或 Shift+Return 或 Command+ Return (Macintosh)

回车符。确保如果没有使用正则表达式,则在搜索时取消对“忽略空白差别”的选择。请注意,这匹配特定字符,而不是一般意义上的换行符;例如,它不匹配 <br> 标签或 <p> 标签。回车符在“设计”视图中显示为空格而不是换行符。

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

注意

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

例如,通过搜索 (\d+)\/(\d+)\/(\d+) 并用 $2/$1/$3 替换它,可以在由斜杠分隔的日期中交换日和月(因此可以在美国样式日期和欧洲样式日期之间进行转换)。

转载于:https://www.cnblogs.com/gfyh/archive/2010/01/30/1659601.html

Dreamweaver 搜索里的正则表达式相关推荐

  1. linux获取中括号内容,shell里使用正则表达式提取括号中的内容

    遇到个websphere MQ监控的问题,希望通过命令行的方式获取到MQ的一些状态: 1. su - mqm 使用mqm用户 2. dspmq 最简单的命令,查看队列控制器的状态: $ dspmq - ...

  2. PPR 搜索里max hit不起作用

    Created by Jerry Wang, last modified on Apr 12, 2014 issue: PPR search的behavior是如果search parameter包含 ...

  3. tsql 正则_sql里的正则表达式

    表 1:定位元字符 元字符 说明 ^ 使表达式定位至一行的开头 $ 使表达式定位至一行的末尾 表 2:量词或重复操作符 量词 说明 * 匹配 0 次或更多次 ? 匹配 0 次或 1 次 + 匹配 1 ...

  4. Visual Studio里使用正则表达式进行查找与替换

    今天反编译了一个项目,里面的Property 的形式变成了最原始的形式,如get_xxx(),set_xxx(val),而且还很多,手动改的话要费很多时间,因此想用正则表达式的分组匹配进行替换,查了一 ...

  5. php正则中不支持g修饰符吗,Pattern Modifiers – 规则表达式的修饰符(转载)发现PHP里有些正则表达式的应用和PERL里的不一样。。所…-PHP教程,PHP应用...

    pattern modifiers – 规则表达式的修饰符 下面是当前规则表达式里可用的修饰. 括号内的名字是那些修饰符的内部 pcre 名字. i (pcre_caseless) 如果设置了这个修饰 ...

  6. Thinkphp使用Validate里的正则表达式验证中文名字和身份证号码

    众所周知,javascript里验证中文的正则表达式如下: var name = $("input[name='name']").val();var regex=/^[\u4E00 ...

  7. angular2项目里使用正则表达式

    先踩坑 test() 方法是一个正则表达式方法. test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false. 我们学习正则表达式时,一般 ...

  8. 利用Visual Studio的搜索功能和正则表达式统计代码行数

    在"整个解决方案"中使用"正则表达式"查找以下字段即可: ^:b*[^:b#/]+.*$

  9. python里使用正则表达式来替换匹配成功的组名

    在前面学习了找到组之后,通过组序号来替换,比如像bold.sub(r'<b>\1</b>', text)),这里是通过\1来替换的,这样的方式就是简单,快捷.但是不方便维护,不 ...

最新文章

  1. x9此计算机上没有hasp_mastercam x9安装步骤
  2. 清华导学故事|卓晴:在每个人生阶段中,找到自己的定位
  3. with(nolock)的用法
  4. jQuery动态设置输出窗口的高度
  5. 将Teams Template升级到dotnet core 3.1
  6. 地雷会炸到自己吗_回顾自己曾经的往事 ——记双语学习有感
  7. hihocoder 1183 割点和割边
  8. 单片机oled显示浮点数函数_问中文编程在单片机上实现一个电子时钟,总共有几步?...
  9. 04737 c++ 自学考试2019版 第四章课后练习 程序设计题 2
  10. Node.js Server
  11. 今日恐慌与贪婪指数为73 贪婪程度有所上升
  12. IE浏览器“SEC7113: CSS 因 Mime 类型不匹配而被忽略”问题的解决方法
  13. NLP的12种后BERT预训练方法
  14. python分数计算器_python计算器实现过程
  15. java用switch判断日期_Java-用switch判断季节
  16. Gestalt laws
  17. 关于python数据的纬度_Python插值时间,纬度和经度
  18. 零基础学习C语言的第一天
  19. android中禁止输入表情符号,Android EdText编辑框禁止输入表情符号(使用正则表达式)...
  20. Android获取汉字首字母工具类

热门文章

  1. 深入理解Java虚拟机(第二版) 第九章:类加载及执行子系统的案例与实战
  2. 不管多少工资,有的公司劳动合同上都写2100,为什么这么操作?
  3. sql 打卡考勤记录查询
  4. SegmentFault 思否联合开源社共同推出中国开源先锋 30 人评选
  5. PDF文件如何调整页面尺寸,非常实用的方法
  6. STM32开发实例 基于STM32单片机的氛围灯
  7. 24、特殊的IP地址
  8. 玩转 HTML5 下 WebGL 的 3D 模型交并补
  9. window.print()实现局部打印及遇到的问题
  10. 2023年上半年网络工程师试题及答案解析