Bonjour
s'il vous plait aidez moi de s'avoir l'utilisation de la ligne p<name> dans la commande regepx
avec un exemple s'il vous plait
merci d'avance
Version imprimable
Bonjour
s'il vous plait aidez moi de s'avoir l'utilisation de la ligne p<name> dans la commande regepx
avec un exemple s'il vous plait
merci d'avance
Hello,
C'est expliqué ici
http://docs.python.org/howto/regex.h...d-named-groups
Bonjour,
Cela permet de nommer un groupe dans une expression régulière.
Par exemple, voici une expression pour une adresse IPv4:
reIPAddress = '(?P<IPAddress>(?:\d{1,3}\.){3}\d{1,3})'
Remarque: Elle pourrait être plus rigoureuse mais pour l'exemle cela suffira. ;)
Et voici un petit code pour mieux comprendre:
Et voici le résultat:Code:
1
2
3
4
5
6
7
8
9
10
11
12 #!/usr/bin/python # -*- coding:Utf-8 -*- from re import compile reIPAddress = '(?P<IPAddress>(?:\d{1,3}\.){3}\d{1,3})' regEx=compile('.+?' + reIPAddress + '.+?') # une ligne de ifconfig ;) myStr='inet adr:123.123.234.234 Bcast:123.123.234.255 Masque:255.255.248.0' result=regEx.search(myStr) if result: # affiche un dico dont la clé est le nom du groupe: IPAddress print result.groupdict()
En plus de la documentation donnée par valAa, voici quelques liens qui devrait t'être utile pour mieux appréhender les expressions régulières:Code:{'IPAddress': '123.123.234.234'}
- http://fr.wikipedia.org/wiki/Expression_rationnelle
- http://docs.python.org/library/re.html?highlight=regex#
- http://www.txt2re.com/index-python.php3
Salutations.