主题:  请教:有没有批量修改网页的方法?

ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#12003/4/11 10:36:56
好几千只网页中想改变共同的一点(比如删除某图), 有什么软件或方法?

比如:我们地区电话号码改变,那些做网页的总不会一页页打开,再修改吧!



shell_5d

职务:普通成员
等级:2
金币:1.0
发贴:194
#22003/4/11 10:56:31
是用模板做的吗,用模板只改模板就可以了


书到用时方恨少~~~

janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#32003/4/11 11:13:55
用editplus,先搜索出所有这些文件,然后在全部文件中做一次替换,并全部保存




职务:管理员
等级:1
金币:11.0
发贴:901
#42003/4/11 11:44:26
dreamweaver也可以,全站查找,替换



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#52003/4/11 12:02:14
谢谢诸位!
简单的替换在 DM 中做好了, 现在有一问题是:
我想删除一图片,代码为:
ylzn.jpg (11913 bytes)A.files/ylzn.jpg" width=535>
因为是存在于不同目录下的图片, 所以图片目录不同, 怎么更替它呢?
能不能用ylzn.jpg (11913 bytes)
* 替代目录名 A或B 等, *是肯定不行的, 我在 DM 中试过. 在DM 中不知还有什么方法?
不知 JNALAY 说的 EDITPLUS 有否此功能?



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#62003/4/11 12:08:40
DW的 replace 效率真是不敢恭维,如果需要替换的数据量超过100,至少要等30秒,如果更多,当然就要等更长时间了,或者干脆提示你脚本运行了很长时间,是否要停一下 而这种情况用editplus一般不会超过3秒钟



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#72003/4/11 12:20:26
同志们, 能不能象 WORD 一样, 更替中间用任意字符(比如^?)形式替代?



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#82003/4/11 13:21:31
editplus支持一种类似正则表达式的匹配模式,在对文本的替换功能比word强(我说针对文本是因为它是个文件编辑器,不能像word那像替换字体样式)



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#92003/4/11 14:27:03
有没有人用过此类正则表达式呀?
要求挺简单的: 代码为:
ylzn.jpg (11913 bytes)
A是一组字母(10字母以内),用空格替代.
也就是 A 怎么用表达式表示它?



流浪的牧师

职务:普通成员
等级:7
金币:23.0
发贴:7973
#102003/4/12 11:03:57
涂料来个你说的软件



janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#112003/4/12 11:35:59
假设有以下一段html代码需要替换:
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)

现在要把所有的xxxx.files换成abc.files,在editplus中使用如下正则表达式:
Find what: (src=")([a-z]+)
Replace with: \1abc

即可完成所有替换。

注意,如果使用正则表达式搜索,要复选 Regular expression 复选框。

另外,这里不讨论软件下载!要用可以自己去搜索。



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#122003/4/13 8:42:53
谢谢!
下载文件时,为了使自己易认识, 目录名不仅仅是字母, 而且有的还不止10个字母, 目录名是中英文相杂, 还有横线的(-)
如:
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
ylzn.jpg (11913 bytes)
这个怎么用 正则表达式替代?
照JANLYA 说法是先把不同目录替换成 abs 目录, 再删除这图片, 要两次替换, 能不能一次就把这图片删除?
是不是就这形式:
Find what: (ylzn.jpg (11913 bytes)
Replace with: \1

\1 (1,2,3,4的1) 什么意思?





编辑历史:[这消息被LADYFIRST编辑过(编辑时间2003-04-13 08:57:07)]


janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#132003/4/13 11:28:18
如果要删除这些特定图片,查找:
(ylzn.jpg \(11913 bytes\))


替换为空即可。

\n表示匹配第n个搜索结果(用()括起来的 Tagged Expression)



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#142003/4/13 12:56:03
非常感谢!



ladyfirst

职务:普通成员
等级:2
金币:1.0
发贴:341
#152003/4/13 16:01:14
问题又来了.
12 行
13 行
alt="ylzn.jpg (11913 bytes)" src="ABSHW-722.files/ylzn.jpg" width=535>
)(第二次
( alt="ylzn.jpg \(11913 bytes\)" src=")(.+)(\/ylzn.jpg" width=535>)

不知道正则表达式里的换行符是如何表述的? 正确表述的话, 大概可以一次更替了吧!