Heim >Backend-Entwicklung >PHP-Tutorial >Was ist der Unterschied zwischen den Quantoren „ ' und „*' in regulären Ausdrücken?

Was ist der Unterschied zwischen den Quantoren „ ' und „*' in regulären Ausdrücken?

Susan Sarandon
Susan SarandonOriginal
2024-12-27 19:17:21269Durchsuche

What's the Difference Between ' ' and '*' Quantifiers in Regular Expressions?

Den Unterschied zwischen den Quantifizierern „ ' und „*“ in regulären Ausdrücken verstehen

Im regulären Ausdruck preg_match von PHP werden die Operatoren und * verwendet als Quantoren, um die Häufigkeit des Vorkommens eines vorhergehenden Zeichens oder Musters anzugeben. Hier ist eine Aufschlüsselung ihrer Unterschiede:

' ' Quantor

Der ' ' Quantor stellt „ein oder mehrere“ Vorkommen des vorhergehenden Ausdrucks dar. Es stimmt mit mindestens einer Instanz des Musters überein, es kann jedoch mit mehr übereinstimmen, wenn vorhanden.

Beispiel:

(.+?)

Diese Regex entspricht einer nicht leeren Zeichenfolge von Zeichen.

'*' Quantifizierer

Der '*' Quantifizierer stellt dar „null oder mehr“ Vorkommen des vorhergehenden Ausdrucks. Es stimmt beliebig oft überein, auch mit keinem.

Beispiel:

(.*?)

Dieser reguläre Ausdruck stimmt mit einer beliebigen Anzahl (einschließlich Null) von Zeichen überein.

Gierige vs. ungierige Quantifizierer

Standardmäßig sind Quantifizierer gierig, das heißt, sie passen so gut wie möglich zusammen. Das Hinzufügen eines „?“ nachdem der Quantifizierer es ungierig macht, sodass es so wenig wie möglich übereinstimmt.

Beispiel:

a.*?b

In diesem Fall ist das .*? Entspricht der kleinstmöglichen Anzahl an Zeichen, um das erste „b“ nach dem „a“ zu finden.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Quantoren „ ' und „*' in regulären Ausdrücken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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