Heim > Backend-Entwicklung > PHP-Tutorial > Was ist der Unterschied zwischen den Quantifizierern „ „ und „*' in „preg_match' von PHP?

Was ist der Unterschied zwischen den Quantifizierern „ „ und „*' in „preg_match' von PHP?

Susan Sarandon
Freigeben: 2024-12-29 02:53:09
Original
545 Leute haben es durchsucht

What's the Difference Between ` ` and `*` Quantifiers in PHP's `preg_match`?

Den Unterschied zwischen Regex Plus ( )- und Star (*)-Quantifizierern verstehen

In der regulären Ausdrucksfunktion preg_match von PHP sind die Plus ( ) und Sternquantifizierer (*) spielen eine unterschiedliche Rolle bei der Übereinstimmung von Mustern innerhalb eines bestimmten Wertes Zeichenfolge.

Quantifizierer: Übereinstimmung von 0 oder mehr vs. 1 oder mehr

  • Der Sternquantifizierer (*) stimmt mit 0 oder mehr Vorkommen des vorhergehenden Ausdrucks überein.
  • Der Plusquantifizierer ( ) stimmt mit einem oder mehreren Vorkommen des Vorhergehenden überein Ausdruck.

Beispiel:

Betrachten Sie die folgenden regulären Ausdrücke:

(.+?)
Nach dem Login kopieren
(.*?)
Nach dem Login kopieren

Gierig vs. Ungierig Quantifizierer

Standardmäßig sind Quantifizierer gierig, was bedeutet, dass sie so viele Zeichen wie möglich verbrauchen. Allerdings ändert das Fragezeichen (?) nach einem Quantifizierer sein Verhalten, um ihn ungierig zu machen, was bedeutet, dass er so wenig Zeichen wie möglich verbraucht.

Gieriges Beispiel

a.*b
Nach dem Login kopieren

In der Zeichenfolge „abab“ stimmt dieser reguläre Ausdruck mit „abab“ überein, da er alle Zeichen bis zum letzten verbraucht 'b'.

Ungieriges Beispiel

a.*?b
Nach dem Login kopieren

In derselben Zeichenfolge stimmt dieser reguläre Ausdruck nur mit dem ersten „ab“ überein, da er die Mindestanzahl an Zeichen verbraucht um dem Muster zu entsprechen.

Fazit:

Den Unterschied zwischen Plus und Stern verstehen Quantoren sowie gieriges und ungieriges Verhalten sind entscheidend für das effektive Schreiben regulärer Ausdrücke in PHP. Dadurch können Entwickler Muster innerhalb von Zeichenfolgen präzise identifizieren, was für eine Vielzahl von Programmieraufgaben unerlässlich ist.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Quantifizierern „ „ und „*' in „preg_match' von PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage