Bonjour à tous,

Voilà, j'ai un petit soucis avec un petit script que je dois utiliser pour par la suite extraire un numéro à neuf chiffre d'une chaine de caractère...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
Dim regEx , occur
Set regEx = New RegExp

regEx.Pattern = "^(.+)(60[0-9]{1})([0-9]{6})(.+)$"
regEx.IgnoreCase = True
regEx.Global = True
regEx.MultiLine = True
Set occur = regEx.Execute("A59078190211174095959917312000606092264 110010115101995108012009080XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx")
For Each myMatch in occur
  msgbox myMatch.Value, 0, "Found Match"
Next
Ce code doit extraire le chiffre que j'ai mis en gras, qui commence toujours par 605 ou 606 (cette suite de chiffre n'apparaitra jamais autre part dans le reste des données)

J'ai tester ma regexp sur des testeur qui arrive à "extraire" l'information, or dans mon petit script (le code tel qui ye dans un fichier ".vbs").

Cela ne marche pas

Pourquoi utiliser des regexp et non chopper la sous chaine via un Mid ??? Parce que cette suitre de caractère n'est jamais à la même place... et il n'y as pas de "sémantique" qui permet de l'anticiper...

Cordialement

David