Reguläre Ausdrücke mit Powershell: Untergruppen matchen

Wenn man nicht das gesamte Muster ‚hart‘ ersetzen möchte, sondern in Abhängigkeit des gematchten Strings, dann bieten sich Gruppen an.
In folgendem Beispiel suche ich alle <h1>-Überschriften und ersetze diese durch <h2>-Überschriften. Dabei wird nicht die Powershell-eigene
replace-Funktion benutzt, sondern die entsprechende .Net Klasse. Das, was zwischen den beiden Tags steht, ist über $1 zugänglich.

$string = "<h1>Hallo</h1>"
$pattern = "<h1>(\w+)</h1>"
[regex]::Replace($string,$pattern,'<h2>$1</h2>')

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website