在HTML文件中查找并替换一条线



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

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

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

使用Windows?

最快的方法是什么?
@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文件之间的差异。一旦验证就可以丢弃。

您可以将文件的名称传递到像这样的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)

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

我在记事本 中使用'替换'中的'replace in in replot in in replore'

^.*Added.*$

最新更新