[Python] Reguläre Ausdrücke Reguläre Ausdrücke

String-Suche

re.search(pattern, string) Suchen Sie den ersten passenden Teil der Zeichenfolge

Das r am Anfang des Musters bedeutet rohe Zeichenfolge, und der Backslash wird unverändert an die Suche übergeben.

In [11]: import re

In [12]: str = 'Less but better'

In [13]: match = re.search(r'\s\w\w\w\s',str)

In [14]: print 'found:', match.group()
found:  but 

Wenn keine übereinstimmende Zeichenfolge vorhanden ist, wird sie als Keine zurückgegeben. Überprüfen Sie sie daher mit der if-Anweisung.

str = 'Less but better'
match = re.search(r'\s\w\w\w\s',str)
if match:
    print 'found:', match.group()
else:
    print 'Not found'

re.findall(pattern, string) Gibt alle Übereinstimmungen zurück

str = 'He who moves not forward, goes backward.'
matches = re.findall(r'\w{3}', str)

Nehmen Sie 3 Zeichen heraus. Suche ab dem nächsten passenden.

In [15]: print matches
['who', 'mov', 'not', 'for', 'war', 'goe', 'bac', 'kwa']

Wenn Sie nur die Wörter extrahieren möchten, gehen Sie wie folgt vor.

In [16]: matches = re.findall(r'\w+', str)

In [17]: matches
Out[17]: ['He', 'who', 'moves', 'not', 'forward', 'goes', 'backward']

re.match(pattern, string) Überprüfen Sie, ob es mit dem regulären Ausdruck vom Anfang der Zeichenfolge übereinstimmt

In [133]: str = 'Information is not knowledge.'

In [134]: match = re.match(r'I',str, re.M|re.I)

In [135]: print match
<_sre.SRE_Match object at 0x0000000018D774A8>

In [136]: print match.group()
I

In [137]: match = re.match(r'i',str)

In [138]: print match
None

Reguläre Ausdrücke

Reguläre Ausdrücke Bedeutung
a,A,9 Entspricht es dem angegebenen Zeichen?
. Ein anderes Zeichen als Zeilenumbruch
\w Brief(a-zA-Z0-9)
\W Andere als Briefe
\s Leerer Charakter(space,tab,return)
\S Andere als weiße Zeichen
\d Zahlen(0-9)
\t Tab
\n newline
\r return
\b Zeichenbegrenzer"xxxx"Anführungszeichen. Stimmt nicht überein, es sei denn, es schließt das Zeichen ein
^ Der Anfang der Zeichenfolge
$ Das Ende der Zeichenfolge
|Stornierung von Sonderzeichen

[ ] [] Repräsentiert einen Zeichensatz. [abc] bedeutet a oder b oder c.

Wiederholung

Reguläre Ausdrücke Bedeutung
* Wiederholen Sie 0 oder mehrmals
+ Ein- oder mehrmals wiederholen
? Wiederholen Sie 0 oder 1 Mal
{n} N-mal wiederholen

group Wenn Sie es in () einschließen, kann es zu einer Gruppe gemacht werden, und ein Teil des passenden Teils kann herausgenommen werden.

str = 'Change before you have to.' 

match = re.search(r'(\w+)\s(\w+)\s(\w+)\s(\w+)\s([\w.]+)',str)
if match:
    print 'found:', match.group()
else:
    print 'Not found'

group () ... Passender Teil groups () ... in Gruppen unterteilt Gruppe (n) ... Extrahieren Sie die n-te Gruppe. Die allererste ist Gruppe (1).

In [15]: print match.group()
Change before you have to.

In [16]: print match.groups()
('Change', 'before', 'you', 'have', 'to.')

In [17]: print match.group(1)
Change

Bei Verwendung einer Gruppe mit findall

In [18]: matches = re.findall(r'(\w+):(\d+)',str)

In [19]: matches
Out[19]: [('aaa', '111'), ('bbbb', '2222'), ('ccccc', '33333')]

Hier oder Hier [Hier] Ich verwies auf (http://www.tutorialspoint.com/python/python_reg_expressions.htm)

Recommended Posts

[Python] Reguläre Ausdrücke Reguläre Ausdrücke
Über Python und reguläre Ausdrücke
Umgang mit regulären Ausdrücken durch PHP / Python
Bei Verwendung regulärer Ausdrücke in Python
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
Python: Vereinfachte morphologische Analyse mit regulären Ausdrücken
Python-Memo für reguläre Ausdrücke
Regulärer Ausdruck in Python
Ein Forscher eines Pharmaunternehmens fasste die kanonischen Ausdrücke in Python zusammen
Python-Pandas: Suchen Sie mit regulären Ausdrücken nach DataFrame
[Python] Werden Sie die Datierung mit regulären Ausdrücken los
Mehrfacher Regressionsausdruck in Python
Verwenden Sie reguläre Ausdrücke in C.
Wickeln Sie lange Ausdrücke in Python ein
Zahlen mit regulären Ausdrücken extrahieren
Manipulation regulärer Ausdrücke durch Python
Befreien Sie sich mit Python und regulären Ausdrücken von schmutzigen Daten
[Sprachverarbeitung 100 Schläge 2020] Kapitel 3: Reguläre Ausdrücke
Ziel Python Library Master (28) verbale Ausdrücke
3.6 Textnormalisierung 3.7 Reguläre Ausdrücke zum Tokenisieren von Text
Slackbot Memorandum ~ Anfrage mit regulären Ausdrücken ~
Informationen zu Python Primer-Modulen und bedingten Ausdrücken
String-Ersetzung durch regulären Python-Ausdruck
Nach Sprache: Reguläre Ausdrücke für Passwörter
100 Sprachverarbeitung Knock 2020 Kapitel 3: Reguläre Ausdrücke
Ein Memo, das doppelte Anführungszeichen in voller Breite mit regulären Python-Ausdrücken verarbeitet
Reguläre Ausdrücke, die in Python leicht und solide zu erlernen sind
Kafka Python
Python-Grundlagen ⑤
Python-Zusammenfassung
Python-Einschlussnotation
Python-Technik
Python studieren
Python-Memorandum
Python FlowFishMaster
Python-Dienst
Python-Tipps
Python-Funktion ①
Python-Grundlagen
Python-Memo
Ufo-> Python (3)
Unterschied zwischen Anweisungen (Anweisungen) und Ausdrücken (Ausdrücken) in Python
Python-Einschlussnotation
Installieren Sie Python
Python Singleton
Python-Grundlagen ④
Python-Memorandum 2
Python-Memo
Python Jinja2
Python-Inkrement
atCoder 173 Python
[Python] -Funktion
Inklusive Notation von Python (über Liste und Generatorausdruck) [zusätzlich]
Python-Installation