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 : Sélectionner tout - Visualiser dans une fenêtre à part
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