Controle optionnel avec des expressions regulieres
Bonsoir ,
Sur python 2.5 sauriez vous comment faire pour effectuer un contrôle syntaxique qui comprendrait une partie optionnelle.
Je m'explique :
Je veux vérifier qu'une ligne contient 4 caractères en majuscule ou chiffes, un caractère optionnel, puis 4 caractères ou chiffres le tout séparé par des slashs.
Donc:
ABCD/E/FGHI est ok
ABCD//FGHI est ok aussi
J'ai déjà une fonction qui utilise re que je poste a la suite :
Code:
1 2 3 4 5 6 7 8 9 10
|
import re
def maFonction(format, chaine):
if re.compile(format).match(chaine):
print "ok"
else:
print "ko"
mess=":ABCD//FGHI"
maFonction(":([A-Z0-9]{4})/([A-Z]/([A-Z0-9]{4})$",mess) |
Ce cas devrait renvoyer ok, mais en l'état actuel il renvoit ko
Merci de votre contribution
Cdt Max