⊗ppPmRgRP 253 of 447 menu

Taschen bei Ersetzungen mit regulären Ausdrücken in PHP

Bei der Arbeit mit der Funktion preg_replace, wenn wir etwas in eine Tasche im regulären Ausdruck stecken, können wir in der Ersetzungszeichenkette den Inhalt dieser Tasche einfügen, indem wir das Dollarzeichen $ und die Nummer der Tasche schreiben. Zum Beispiel, $0 - die nullte Tasche, $1 - die erste Tasche, $2 - die zweite Tasche und so weiter.

Wofür das nützlich ist und wie man es verwendet, schauen wir uns an Beispielen an.

Beispiel

Lasst uns alle Zahlen finden und an ihrer Stelle dieselben Zahlen, aber in geschweiften Klammern, einfügen. Dazu werden wir alle gefundenen Zahlen ersetzen durch sich selbst, aber in geschweiften Klammern:

<?php $str = '1 23 456 xax'; $res = preg_replace('#(\d+)#', '{$1}', $str); ?>

Als Ergebnis wird in die Variable folgendes geschrieben:

'{1} {23} {456} xax'

Beispiel

Lasst uns alle Zeichenketten finden, die Zahlen mit umgebenden 'x' darstellen und diese Zahlen durch sich selbst ersetzen, aber mit '!' Zeichen umgeben:

<?php $str = 'x1x x23x x456x xax'; $res = preg_replace('#x(\d+)x#', '!$1!', $str); ?>

Als Ergebnis wird in die Variable folgendes geschrieben:

'!1! !23! !456! xax'

Beispiel

Lasst uns die folgende Aufgabe lösen: es gibt Zeichenketten der Form 'aaa@bbb' - Buchstaben, dann ein At-Zeichen, dann Buchstaben. Wir müssen die Buchstaben vor '@' und danach vertauschen. Implementierung:

<?php $str = 'aaa@bbb ccc@ddd'; $res = preg_replace('#([a-z]+)@([a-z]+)#', '$2@$1', $str); ?>

Als Ergebnis wird in die Variable folgendes geschrieben:

'bbb@aaa ddd@ccc'

Praktische Aufgaben

Gegeben ist eine Zeichenkette:

<?php $str = '12 34 56 78'; ?>

Vertauschen Sie die Ziffern in allen zweistelligen Zahlen.

Gegeben ist eine Zeichenkette mit einem Datum:

<?php $str = '31.12.2025'; ?>

Wandeln Sie dieses Datum in '2025.12.31' um.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen