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 mag LaTeX und Python, auch gern in Kombination. Hat Dir dieser Beitrag geholfen und möchtest Du Dich dafür bedanken? Dann unterstütze doch vielleicht die Dingfabrik Köln e.V. mit einem kleinen Beitrag. Details zur Bezahlung findest Du unter Spenden für die Dingfabrik.

More Posts - Website