Les expressions régulières en python ont une fonctionnalité appelée noms de groupes symboliques.
Si vous utilisez ceci, vous pouvez nommer et gérer les sous-chaînes correspondantes, de sorte qu'elles seront plus lisibles que d'utiliser \ 1
.
Ce qui suit est un exemple.
# 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'))
Après tout, lorsque la forme (? P <nom> expression régulière)
apparaît dans l'expression régulière,
La partie qui correspond à l'expression régulière spécifiée peut être récupérée ultérieurement avec le nom spécifié par la méthode group
.
De plus, le rubis a la même fonction
/.*(?<test1>k.*t).*/ =~ 'abcdefghijklmnopqrstuvwxyz'
p test1
est. Dans le cas de ruby, il est automatiquement étendu à une variable. Je pense que j'aime ça.
Recommended Posts