在HTML文件中查找并替换整行

时间:2014-01-30 10:57:45

标签: text replace batch-processing

我需要编辑大约600个HTML文件,每个文件都有以下格式的行:

John Doe<div class="author"><b>Added: </b>July 8, 2006</div>

每个文档中的名称和日期都不同。我需要从所有文档中删除此行。

使用Windows,最快的方法是什么?

3 个答案:

答案 0 :(得分:2)

@ECHO OFF
SETLOCAL
FOR %%f IN (*.html) DO (
 FINDSTR /v /r /c:"^.*<div class=\"author\"><b>Added: </b>.*</div>$" "%%f" >"%%~nf.new"
 FC "%%f" "%%~nf.new"
)
GOTO :EOF

应该看到这个问题。

fc行仅用于验证 - 它应显示.html文件和.new文件之间的差异。验证后可以删除。

答案 1 :(得分:0)

您可以将文件名称传递给像这样的

的python脚本
# Run as script.py *.html
import fileinput, sys
for line in fileinput.input(inplace=1):
    if '<div class="author"><b>Added: </b>' not in line:
        sys.stdout.write(line)

请注意,文件将在没有备份的情况下进行修改,因此请在运行命令之前保留备份。

答案 2 :(得分:0)

我最后使用Notepad ++中的'替换文件'功能使用以下正则表达式

  

^.*Added.*$