我正在尝试从文件夹中的几百页的HTML中删除图像。常见的字符串是" /stream/image.axd"。我尝试过使用RegEx,但我似乎无法弄清楚如何到达标签的开头和结尾部分。
示例如下所示。
新的齿轮看起来像<img src="/stream/image.axd?picture=planetary.gif" width="600" height="237">
答案 0 :(得分:0)
首先:你不应该使用正则表达式解析html,看看here。如果您仍想这样做,可以使用类似
的内容Get-Content 'file.html' | ForEach{$_ -replace '<.*/stream/image\.axd.*?>'}
更高级,您可以使用this thread中的方法来设置本地html文件的.NET解析版本:
$html = New-Object -ComObject "HTMLFile";
$source = Get-Content -Path "file.html" -Raw;
$html.IHTMLDocument2_write($source);
获得后,您可以按标签名称识别图像,然后使用removeNode
方法删除图像标签。