Kapitel 9. Textverarbeitung mit regulären Ausdrücken
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Du kannst reguläre Ausdrücke auch zum Ändern von Text verwenden. Bisher haben wir dir nur gezeigt, wie du ein Muster abgleichen kannst. Jetzt werden wir dir zeigen, wie du Muster verwenden kannst, um die Teile von Zeichenketten zu finden, die du ändern willst.
Ersetzungen mit s///
Wenn du dir die m// Musterübereinstimmung wie die "Suchfunktion" deines Textverarbeitungsprogramms vorstellst, wäre die "Suchen und Ersetzen"-Funktion Perls s///Ersetzungsoperator. Dieser ersetzt einfach den Teil einer Variablen, der mit dem Muster übereinstimmt, durch eine Ersatzzeichenfolge:
$_ = "He's out bowling with Barney tonight."; s/Barney/Fred/; # Replace Barney with Fred print "$_\n";
Hinweis
Im Gegensatz zu m//, das mit jedem beliebigen String-Ausdruck übereinstimmen kann, ändert s///Daten, die daher in einem sogenannten lvalue enthalten sein müssen. Das ist fast immer eine Variable, aber es kann alles sein, was du auf der linken Seite eines Zuweisungsoperators verwenden kannst.
Wenn die Übereinstimmung fehlschlägt, passiert nichts, und die Variable bleibt unberührt:
# Continuing from previous; $_ has "He's out bowling with Fred tonight." s/Wilma/Betty/; # Replace Wilma with Betty (fails)
Natürlich können sowohl das Muster als auch die Ersetzungszeichenfolge komplexer sein. In diesem Fall verwendet die Ersetzungszeichenfolge ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access