Bonjour,

J'ai une chaîne de caractères de la forme 0265987789-00.

Je souhaite contrôler que les 10 premiers caractères sont des entiers (aucunes lettres ni caractères spéciaux), que le 11 égale à '-' et que les 2 derniers caractères sont eux aussi des entiers.

Pour information, ma chaîne de caractères provient d'un Entry, donc un String. Je n'arrive pas à faire les manipulations...

Si je fais int(HU_Ref.get()[:10]), cela me retourne 265987789 à la place de 0265987789

Merci par avance pour votre aide.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#.....
HU_Ref = StringVar()
HURef_entry = Entry(ControlMenu_frame, textvariable=HU_Ref, font=Myfont)
#.......
if HU_Ref.get()[:4] != '0265':
    messagebox.showerror("Error", "4 first digit must start by '0265'!")
elif int(HU_Ref.get()[-2:]) != int:
    messagebox.showerror("Error", "2 last digit non ok!")
elif str(HU_Ref.get()[10:11]) != str('-'):
    messagebox.showerror("Error", "Separator must be "-" !")
else:   
    #....