Мне нужно удалить один и тот же код html из многих файлов. Я попытался написать сценарий powershell, но он не работает.Скрипт удаляет несколько строк HTML-кода
$htmlFiles = Get-ChildItem . *.html -rec
$old = '<form method="GET" action="http://localhost/index.php" name="head2">`r`n
<input type="hidden" name="akcja" value="szukaj">`r`n
<input type="hidden" name="ind" value="0" >`r`n
`r`n
<table border="0" cellpadding="1" cellspacing="0" style="margin-left:11px" >`r`n
`r`n
SOME MORE CODE
`r`n
</table>`r`n
`r`n
</form>'
$new = ""
foreach ($file in $htmlFiles)
{
(Get-Content $file.PSPath) |
Foreach-Object { $_ -replace $old, $new} |
Set-Content $file.PSPath
}
Я использовал так много `r`n, потому что у меня это же в html-файлах. Может быть, мне нужно сделать это с помощью регулярного выражения, но регулярное выражение для более чем 50 строк слишком для меня. Я думаю, что скрипт не работает, потому что пробелы не совпадают. Как заставить его работать?
Мой скрипт работает, но не влияет на файлы ps. он должен работать на окнах
Использование Html Agility пакет для такого рода работы: http://www.leeholmes.com/blog/2010/03/05/html-agility-pack-rocks-your-screen-scraping-world/ –