⊗ppPmRgOC 241 of 447 menu

Der 'oder'-Befehl in regulären Ausdrücken von PHP

In dieser Lektion behandeln wir den Befehl |, der eine leistungsfähigere Variante von ODER im Vergleich zum Befehl [] darstellt. Dieser Befehl ermöglicht es, den regulären Ausdruck in mehrere Teile zu trennen. Dabei kann das Gesuchte entweder auf einen Teil des regulären Ausdrucks passen oder auf einen anderen. Sehen wir uns das an Beispielen an.

Beispiel

In diesem Beispiel ist das Suchmuster wie folgt: drei Buchstaben 'a' oder drei Buchstaben 'b':

<?php $str = 'aaa bbb abb'; $res = preg_replace('#a{3}|b{3}#', '!', $str); ?>

Als Ergebnis wird Folgendes in die Variable geschrieben:

'! ! abb'

Beispiel

In diesem Beispiel ist das Suchmuster wie folgt: drei Buchstaben 'a' oder 1 oder mehr Buchstaben 'b':

<?php $str = 'aaa bbb bbbb bbbbb axx'; $res = preg_replace('#a{3}|b+#', '!', $str); ?>

Als Ergebnis wird Folgendes in die Variable geschrieben:

'! ! ! ! axx'

Beispiel

In diesem Beispiel ist das Suchmuster wie folgt: ein oder mehrere Buchstaben oder drei Ziffern:

<?php $str = 'a ab abc 1 12 123'; $res = preg_replace('#[a-z]+|\d{3}#', '!', $str); ?>

Als Ergebnis wird Folgendes in die Variable geschrieben:

'! ! ! 1 12 !'

Beispiel

Der senkrechte Strich kann den regulären Ausdruck nicht nur in zwei Teile, sondern in beliebig viele Teile teilen:

<?php $str = 'aaa bbb ccc ddd'; $res = preg_replace('#a+|b+|c+#', '!', $str); ?>

Als Ergebnis wird Folgendes in die Variable geschrieben:

'! ! ! ddd'

Beispiel

Wenn der senkrechte Strich innerhalb von runden Klammern steht, dann funktioniert 'oder' nur innerhalb dieser Klammern. Nehmen wir zum Beispiel an, wir suchen Zeichenketten nach dem folgenden Muster: am Anfang steht entweder 'a' oder 'b' ein oder mehrere Male, und danach zwei Buchstaben 'x':

<?php $str = 'axx bxx bbxx exx'; $res = preg_replace('#(a|b+)xx#', '!', $str); ?>

Als Ergebnis wird Folgendes in die Variable geschrieben:

'! ! ! exx'

Praktische Aufgaben

Gegeben sei die Zeichenkette:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

Schreiben Sie einen regulären Ausdruck, der Zeichenketten nach dem Muster findet: an den Rändern stehen die Buchstaben 'a', und dazwischen - entweder der Buchstabe 'e' beliebig oft oder der Buchstabe 'x' beliebig oft.

Gegeben sei die Zeichenkette:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

Schreiben Sie einen regulären Ausdruck, der Zeichenketten nach dem Muster findet: an den Rändern stehen die Buchstaben 'a', und dazwischen - entweder der Buchstabe 'e' zwei Mal oder der Buchstabe 'x' beliebig oft.

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