情况如下:
我有很多HTML文件,这些HTML文件链接到很多文档。所有文件都已重命名。我有一张excel表,其中包含文件的旧名称和文件的新名称。
更改HTML文件中的链接以容纳新名称的最快方法是什么?
我现在使用的方法: 在Notepad ++中打开所有HTML文件 使用Notepad ++的'Replace in All Opened Documents'功能将所有出现的特定链接替换为新文件名。
是否有更快捷,更好的方式?
答案 0 :(得分:1)
Perl的正则表达式。
阐述: 伪代码
open up each file for read-only and read them into a list.
close the files
foreach element in the list
#do the desired text replacement
`s/$oldtext/$newtext/g`;
open each file once more now for writing
write out the new text.
这并不难,但需要进行一些测试。如果你有很多编辑(以后会发生更多的编辑),这会更有效。
答案 1 :(得分:0)
有几个免费和开源工具可以替换多个文件中的文本,其中一个开源文件是FART
如果您喜欢带GUI的内容,请尝试免费的Text Crawler
答案 2 :(得分:0)
首先将excel保存到像csv文件这样简单易用的内容中,以便用您喜欢的语言(例如perl)轻松阅读。迭代每个文件并进行搜索和替换。一个问题是在一次通过中完成所有操作,否则如果链接以复杂方式发生变化,您可能会产生问题。即如果文件a.html更改为b.html并且b.html更改为a.html,则如果您在多次传递中执行此操作,则可能会弄乱链接。因此,将所有更改加载到内存中,然后遍历每个文件并同时替换其中的所有链接。
因为它是专门的html搜索并替换这样的工具是理想的:
一次查找并替换多个文件中的多个文本字符串!