Heim  >  Artikel  >  Web-Frontend  >  Mehrzeiliger Modus und einzeiliger Modus, grafische Analyse_regulärer Ausdruck

Mehrzeiliger Modus und einzeiliger Modus, grafische Analyse_regulärer Ausdruck

微波
微波Original
2017-06-28 13:38:181282Durchsuche

In diesem Artikel wird hauptsächlich die grafische Analyse des mehrzeiligen Modus und des einzeiligen Modus von regulärem Ausdruck vorgestellt. Freunde, die es benötigen, können sich auf

beziehen. Testen Sie in Expresso die Funktion „multi -Zeilenmodus" ”

Test 1

Hinweis: Im Beispieltext hier und gibt es nach 3eeeee keinen Wagenrücklauf Der Cursor befindet sich direkt hinter e. Das passende Ergebnis ist 3eeeee, wie oben im Bereich „Suchergebnisse“ angezeigt.

Warum können 1abcde und 2abc hier nicht übereinstimmen?

Mehrzeiligen Modus aktivieren

^ kann mit dem Anfang der Zeichenfolge (der Startposition der Zeichenfolge) oder dem Anfang von übereinstimmen die Zeile (d. h. die Position nach dem Zeilenumbruchzeichen n)
$ kann mit dem Ende der Zeichenfolge (der Endposition der Zeichenfolge) oder dem Ende der Zeile (d. h. der Position vor dem Zeilenumbruchzeichen n) übereinstimmen

Mehrere schließen Das Linienmuster

^ kann nur mit dem Anfang der Zeichenfolge
$ und nur mit dem Ende der Zeichenfolge

Wissenspunkte: r ist das Wagenrücklaufzeichen und n ist das Zeilenvorschubzeichen. Was wir in Windows normalerweise als Zeilenvorschub bezeichnen, ist im Wesentlichen zuerst ein Wagenrücklauf und dann ein Zeilenvorschub. Eine ausführlichere Erklärung finden Sie weiter unten.

Wie im Bild oben gezeigt: r entspricht [CR], n entspricht [LF] <—— CR ist Wagenrücklauf LF ist Zeilenvorschub

Mehrere Absätze von string, zum Beispiel
ab
cd
e
im Windows-Betriebssystem ist eigentlich: ab[CR][LF]cd[CR][LF]e

in Windows: Wagenrücklauf und Zeilenvorschub im Text werden wie folgt gespeichert: 0D 0A. Mit anderen Worten: Was zuerst gespeichert wird, ist „Wagenrücklauf r“ und dann „Zeilenvorschub n“

CR wird durch das Symbol „r“ dargestellt, der ASCII-Code ist 13, hexadezimal ist 0x0D;
LF wird durch das Symbol 'n' dargestellt, ASCII-Code ist 10, Hexadezimal ist 0x0A;

Regulärer Ausdruck: (?m)^(dw+)(s*)$

Beispieltext

Übereinstimmende Ergebnisse

Mehrzeiligen Modus in Expresso aktivieren, PHP, „$“-Übereinstimmungen das Ende der Zeichenfolge oder die Position vor „n“.

Einzeiliger Modus

Einzeiliger Modus aktivieren: . Kann mit jedem Zeichen übereinstimmen (einschließlich Zeilenumbrüchen)

Einzeiliger Modus schließen: Nicht-Neuzeilen-Zeichen
AndereBeliebige Zeichen (. kann mit r übereinstimmen, also alle Zeichen außer n.)

Der Mehrzeilenmodus beeinflusst die Übereinstimmung von ^ und $

Einzel- Der Zeilenmodus beeinflusst die Übereinstimmung von .

Der Mehrzeilenmodus muss ^ oder $ oder beides enthalten, sonst macht es keinen Sinn, selbst wenn m hinzugefügt wird

Einzeiliger Modus und mehrzeiliger Modus sind zwei Konzepte, die nicht mit acht Stöcken besiegt werden können, nur weil Die historischen Gründe für die Entwicklung regulärer Ausdrücke haben solche zwei sich gegenseitig ausschließenden Konzepte von MS geschaffen

Einzeiliger Modus beeinflusst den Übereinstimmungsbereich des Dezimalpunkts „.“
Der Mehrzeilenmodus beeinflusst den Übereinstimmungsbereich von „^“ und „$“

Was die folgenden Konzepte betrifft, besteht kein notwendiger Zusammenhang zwischen dem globalen Vergleich, dem Mehrzeilenmodus und dem Greedy-Modus

Globales Matching ist deaktiviert und nur der erste erfolgreiche Match wird abgeglichen. Globales Matching ist aktiviert, alle erfolgreichen Matches werden abgeglichen.

Globaler Modus ist ein Konzept, das nur in einigen Skriptsprachen zu finden ist.
Beim Matching deaktivieren Aktivieren Sie den globalen Modus, ähnlich der Match-Methode in .NET, und aktivieren Sie den globalen Modus, ähnlich wie Matches in .NET. Die Methode
deaktiviert beim Ersetzen den globalen Modus, ähnlich wie replaceFirst in Java, und aktiviert den globalen Modus Modus, ähnlich wie replaceAll in Java

(schaltet beim Abgleich den globalen Modus aus, ähnlich der PHP-Funktion preg_ match

; schaltet den globalen Modus ein, ähnlich der Funktion preg_ match_ all in PHP)

Das obige ist der detaillierte Inhalt vonMehrzeiliger Modus und einzeiliger Modus, grafische Analyse_regulärer Ausdruck. 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