I am trying to replace a string in each file lets call the string XXX I would like to replace it with the regex pattern variable text found between Start and END
Currently it simply replaces the word, and then just does not replace.
$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 $_
}
Example Text Below
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque porttitor augue quis urna suscipit lobortis. Cras eu magna sem. Quisque dictum feugiat convallis.
START File Name 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
, so you're replacing with a null value. – TheMadTechnician