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