Bonjour,
Je me demandais juste comment faire les parenthèses capturantes avec les expressions régulières de Python, plus précisément, les équivalents des variables spéciales $1, $2, ... de Perl
Bonjour,
Je me demandais juste comment faire les parenthèses capturantes avec les expressions régulières de Python, plus précisément, les équivalents des variables spéciales $1, $2, ... de Perl
Je suis plus sûr si c'est .group() ou .groups(), mais c'est comme ça qu'on fait.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 import re m = re.search(r'(.)(.)(.)', 'abc') print m.groups(1) # => a print m.groups(2) # => b print m.groups(3) # => c
Merci GnuVince,
Bon, il y avait comme qui dirait une petite erreur de ma part, les $1, $2, ..., c'est pour PHP , en Perl c'est \1, \2, ..., ce qui est aussi le cas pour Python.
Les groups(), ça marche aussi très bien, merci.
En gros, on a un truc comme ceci:
Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 >>> import re >>> text = 'abc' >>> regex = re.compile('(.)(.)(.)') >>> match = regex.match(text) >>> print match.group(1, 2, 3) ('a','b','c') >>> print match.groups()[0] # ou print match.group(1) a >>> print match.groups()[1] # ou print match.group(2) b >>> print match.groups()[2] # ou print match.group(3) c >>> text = regex.sub(r'\3\2\1') >>> print text 'cba'
Encore une fois, merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager