PowerShell:
Tekstin etsiminen ja korvaaminen
How to - Näin se tehdään
Voit etsiä ja korvata tekstiä PowerShellissa käyttämällä -replace operaattoria.
# Etsi ja korvaa yksinkertainen esimerkki
$teksti = 'Hello Helsinki!'
$uusiTeksti = $teksti -replace 'Helsinki', 'Espoo'
$uusiTekstiOutput:
Hello Espoo!Voit myös käyttää regex (säännöllisiä lausekkeita) monimutkaisempiin etsintöihin.
# Regex esimerkki
$teksti = 'Tervetuloa vuoteen 2023!'
$korjattuTeksti = $teksti -replace '\d{4}', '2024'
$korjattuTekstiOutput:
Tervetuloa vuoteen 2024!Deep Dive - Syväsukellus
PowerShell on rakennettu .NET:in päälle, mikä mahdollistaa sen, että string korvaukset toimivat tehokkaasti. -replace operaattori käyttää .NET:n Regex.Replace metodia oletuksena.
Historiallista kontekstia kaipaaville: tehtävä on vanha kuin mikroaaltouuni. Unix-like järjestelmissä sed on klassinen komentorivityökalu tekstikorvausten tekemiseen, ja PowerShellin tekstin korvaamisen ominaisuudet ovat tavallaan sen henkiset perilliset.
Vaihtoehtoja? Voit tehdä samaa .NET:n String.Replace metodilla, mutta se ei tuki regexiä, joka on tarpeen monimutkaisemmissa tapauksissa.
See Also - Katso myös
- Microsoftin virallinen dokumentaatio regexistä PowerShellissa: about_Regular_Expressions
Get-Help about_Comparison_OperatorsPowerShellissa lisätietoja-replaceoperaattorista- Korvaamiseen liittyvät StackOverflow-keskustelut ja esimerkit: StackOverflow: PowerShell Replace