我想替換每個文件中的字符串讓我們調用字符串XXX 我想用開始和結束之間找到的正則表達式模式變量文本替換它在文本文件中搜索和替換 - 使用RegEx變量模式
目前它只是取代這個詞,然後就是不替代。
$Pat1 = [regex] '(START)*(END)' # Find Variable between these 2 first
Get-ChildItem * -Recurse | Where-Object {
$_.Attributes -ne "Directory"
} | ForEach-Object {
(Get-Content $_) -replace "XXX","$Pat1" | Set-Content -path $_
}
示例文本下面
Lorem存有悲坐阿梅德,consectetur adipiscing ELIT。 Quisque porttitor augue quis urna suscipit lobortis。 Cras eu magna sem。 Quisque dictum feugiat convallis。
START 文件名1 END Lorem ipsum dolor sit amet,consectetur adipiscing elit。 Quisque porttitor augue quis urna suscipit lobortis。 Cras eu magna sem。 Quisque dictum feugiat convallis。
XXX Vestibulum risus quam,volutpat iaculis ipsum in,vehicula dictum urna。 Suspendisse dui tortor,faucibus et tellus vitae,malesuada consequat velit。
=================================
您從未爲'$ Pat1'執行匹配,因此您將替換爲空值。 – TheMadTechnician
喜TMT - 添加我像這樣 「$ PAT1」 -match – wp44
我一直在努力,這也:的foreach對象{$ _ -replace 「XXX」,「(<= START?)*(我?)。? (?= * END)「} | - 似乎沒有任何工作:( – wp44