PowerShell:
Tekst zoeken en vervangen
Hoe:
PowerShell maakt zoeken en vervangen vrij eenvoudig. Bekijk -replace voor strings en Get-Content met Set-Content voor bestanden.
Tekst in een string vervangen:
$text = "I love PowerShell"
$updatedText = $text -replace "love", "adore"
$updatedTextVoorbeelduitvoer:
I adore PowerShellTekst in een bestand vervangen:
$file = "example.txt"
$content = Get-Content $file
$content | ForEach-Object { $_ -replace "oldWord", "newWord" } | Set-Content $fileHier geen uitvoer, maar example.txt heeft nu elk “oudWoord” vervangen door “nieuwWoord”.
Diepere duik
Sinds het begin van tekstbewerking is zoeken en vervangen een hoeksteen geweest. Denk eraan als de zoek-en-vervang functie in een tekstverwerker maar dan super opgeladen voor codenoden.
Vroeger gebruikten commandoregel-tovenaars gereedschappen zoals sed in Unix. PowerShell bracht deze functionaliteit naar zijn scripttaal. Waarom is het cool? Omdat het gebonden is aan objecten, niet alleen aan tekst. Dat betekent dat je niet alleen code en tekstbestanden kunt aanpassen, maar ook gegevensstructuren en meer.
Alternatieven? Zeker. Je hebt teksteditors en IDE’s met hun eigen zoek-en-vervang, batchscripts, of zelfs programmeerbibliotheken ontworpen voor tekstmanipulatie.
Implementatiedetails? PowerShell doet aan regex. Dat betekent dat je dingen kunt vervangen op basis van patronen, niet alleen vaste woorden. Plus, met PowerShell-scripts kun je deze bewerkingen automatiseren over een enorm aantal bestanden, wat je een hoop tijd bespaart.