Symbolischer Gruppenname für reguläre Ausdrücke in Python / Ruby

Reguläre Ausdrücke in Python haben eine Funktion, die als symbolische Gruppennamen bezeichnet wird. Wenn Sie dies verwenden, können Sie die übereinstimmenden Teilzeichenfolgen benennen und verwalten, sodass sie besser lesbar sind als die Verwendung von "\ 1". Das Folgende ist ein Beispiel.

# encoding: utf-8     
import re          
testtext = 'abcdefghijklmnopqrstuvwxyz'

pattern = re.compile(r'.*(?P<test1>k.*t).*')
m = pattern.match(testtext)
if m:
    print(m.group('test1')) 

Wenn die Form "(? P regulärer Ausdruck)" im regulären Ausdruck erscheint, Der Teil, der dem angegebenen regulären Ausdruck entspricht, kann später mit dem durch die group -Methode angegebenen Namen abgerufen werden.

Auch Rubin hat die gleiche Funktion

/.*(?<test1>k.*t).*/ =~ 'abcdefghijklmnopqrstuvwxyz'
p test1

ist. Im Falle von Ruby wird es automatisch zu einer Variablen erweitert. Ich denke, ich mag das.

Recommended Posts

Symbolischer Gruppenname für reguläre Ausdrücke in Python / Ruby
Regulärer Ausdruck in Python
Regulärer Ausdruck in regex.h
Verwenden Sie den let-Ausdruck in Python
Python-Theorie regulärer Ausdruck Anmerkungen
Reproduzieren Sie den regulären Python-Ausdruck r '\ w (? U)' in JavaScript
AtCoder ABC168 Ein in Ruby und Python gelöster Fallausdruck
String-Ersetzung durch regulären Python-Ausdruck
Holen Sie sich den Hostnamen in Python
Bei Verwendung regulärer Ausdrücke in Python
Überlappende reguläre Ausdrücke in Python und Java
Unterschiede zwischen Ruby und Python im Umfang
Großer Unterschied in der Leistung von Ruby, Python und httpd
Referenz der INI-Datei in Python oder Ruby
(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!
Lösen mit Ruby, Perl, Java und Python AtCoder ABC 047 C Regulärer Ausdruck
Funktionen von Modulen für reguläre Ausdrücke, die in Python häufig persönlich verwendet werden
Verwendung regulärer Ausdrücke in Python
Versuchen Sie etwas wie Python für-else in Ruby
Wie schreibe ich Ruby to_s in Python
Ein Forscher eines Pharmaunternehmens fasste die kanonischen Ausdrücke in Python zusammen
Passen Sie die Verteilung jeder Gruppe in Python an
GNU GLOBAL (gtags) + α in Go, Ruby, Python
Gruppierungskombination in Python / Ruby / PHP / Golang (Go)
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
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
[Python] Reguläre Ausdrücke Reguläre Ausdrücke
Konstante in Python
FizzBuzz in Python
Janken in Ruby
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
nCr in Python.
Format in Python
Scons in Python 3