Bonjour à tous,
Je sollicite votre aide pour le traitement d'un fichier de données par l'utilisation d'expression régulières.
Mes données sont le forme :
la partie XXX pouvant prendre les valeurs : P, HPE, HPH, HCE, HCH
Code : Sélectionner tout - Visualiser dans une fenêtre à part 43-43-14P52N1-17-08P22W;07/02/11-10:30:03;XXX;0;560
J'ai écris l'expression régulière suivante :
qui fonctionne bien mais qui MATCH avec les données suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 pat1 = re.compile('''\d\d-\d\d-\d\dP\d\d[A-Z]\d-\d\d-\d\dP\d\d[A-Z]; \d\d/\d\d/\d\d-\d\d:\d\d:\d\d; (P|HPE|HPH|HCE|HCH); [0-9]+; [0-9]{1,9}''',re.VERBOSE)
je ne comprends pas pourquoi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 43-44-33P64N1-18-17P79W;19/03/11-04:30:05;HCH;0;206KH 43-44-33P64N1-18-17P79W;19/03/11-12:00:07;HPH;0;194E7O8Z 43-44-33P64N1-18-17P79W;20/03/11-07:30:03;HCH;0;214JWH _5OX<ZE(_S 0CVAPH
Voici le code :
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 pat1 = re.compile('''\d\d-\d\d-\d\dP\d\d[A-Z]\d-\d\d-\d\dP\d\d[A-Z]; \d\d/\d\d/\d\d-\d\d:\d\d:\d\d; (P|HPE|HPH|HCE|HCH); [0-9]+; [0-9]{1,9}''',re.VERBOSE) # with open(repOri+'tic.csv') as fichier : listTicOk = [] listTicNok = [] for line in fichier : if re.match(pat1, line): listTicOk.append(line) else: listTicNok.append(line)
Partager