Start / End-Match im regulären Python-Ausdruck

Ich habe diesen Eintrag gesehen.

Verwenden Sie \ A und \ z anstelle von ^ und $ für die Validierung normaler Ausdrücke

Hmm, ich wusste es nicht, ich habe mich gefragt, was mit Python passiert ist, also habe ich es versucht. Die Version ist 3.3.

\ Z (Großbuchstaben) statt \ z (Kleinbuchstaben)

Als ich \ z wie Ruby angegeben habe, hat es nicht wie erwartet funktioniert, also habe ich mich gefragt, warum und als ich mir das Dokument angesehen habe, war es \ Z.

>>> import re
>>> re.match('\Aabc\Z', 'abc')
<_sre.SRE_Match object at 0x7f12f3d371d0>
>>> re.match('\Aabc\Z', 'abc\ndef')
>>>

Übrigens scheinen \ Z und \ z in Ruby getrennt zu sein. \ Z scheint zu urteilen, indem er den letzten Zeilenumbruch ignoriert.

Standard ist nicht mehrzeiliger Modus

Es wurde gesagt, dass Ruby eine Falle sein würde, da es sich standardmäßig im mehrzeiligen Modus befindet, aber Python war nicht so, also bin ich erleichtert. Fügen Sie die Option "re.MULTILINE" hinzu, um den Mehrzeilenmodus aufzurufen.

>>> re.match('^abc$', 'abc\ndef')
>>>
>>> re.match('^abc$', 'abc\ndef', re.MULTILINE)
<_sre.SRE_Match object at 0x7f12f3d37168>

Behandlung von Zeilenumbrüchen

Beachten Sie, dass $ auch dann übereinstimmt, wenn Sie sich nicht im Mehrzeilenmodus befinden und die nachfolgende Unterbrechung ignorieren. \ Z ignoriert nachfolgende Unterbrechungen nicht.

>>> re.match('^abc$', 'abc\n')
<_sre.SRE_Match object at 0x7f12f3d371d0>
>>> re.match('\Aabc\Z', 'abc\n')
>>>

Mit Javascript ...

Ich fragte mich, was es war, aber anscheinend gab es kein \ A oder \ z. (Es ist wahr, weil ich es nur ein wenig nachgeschlagen habe.)

Recommended Posts

Start / End-Match im regulären Python-Ausdruck
Regulärer Ausdruck in Python
Regulärer Ausdruck in regex.h
Python-Memo für reguläre Ausdrücke
Erreiche __END__ in Python
Symbolischer Gruppenname für reguläre Ausdrücke in Python / Ruby
Verwenden Sie den let-Ausdruck in Python
Python-Theorie regulärer Ausdruck Anmerkungen
[Gimp] Starten Sie die Skripterstellung mit Python
Manipulation regulärer Ausdrücke durch Python
kanonischer Python-Ausdruck oder Match-Objekt-Memo
Reproduzieren Sie den regulären Python-Ausdruck r '\ w (? U)' in JavaScript
String-Ersetzung durch regulären Python-Ausdruck
Bei Verwendung regulärer Ausdrücke in Python
Starten Sie Python
Überlappende reguläre Ausdrücke in Python und Java
Python3> im Schlüsselwort> Wahr mit teilweiser Übereinstimmung?
(Python) Hinweise zum Lesen von HTML und zur Verwendung regulärer Ausdrücke
Ersetzen Sie Nicht-ASCII durch reguläre Ausdrücke in Python
Verwenden Sie \ d nicht in regulären Python 3-Ausdrücken!
Verwendung regulärer Ausdrücke in Python
Überprüfung und Extraktion der URL-Übereinstimmung mit dem regulären Python-Ausdruck Regex Complete-Version
Funktionen von Modulen für reguläre Ausdrücke, die in Python häufig persönlich verwendet werden
Quadtree in Python --2
Python in der Optimierung
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Regulärer Ausdruck Gierig
Ein Forscher eines Pharmaunternehmens fasste die kanonischen Ausdrücke in Python zusammen
Passen Sie die Verteilung jeder Gruppe in Python an
Epoche in Python
Zwietracht in Python
Starten Sie Python
Python-Schnellstart
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
[Python] Beginne zu lernen
Programmieren mit Python
Plink in Python
[Python] Reguläre Ausdrücke Reguläre Ausdrücke
Konstante in Python
FizzBuzz in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python