Bonjour,
Je souhaiterai décortiquer un fichier texte et récupérer certaines informations. J'ai énormément de mal avec les expressions régulières.
Siège 2 : XXXXXX (1500 en jetons)
Sur cette ligne j'essaye de récupérer le numéro du siège je suis pour le moment sur ça $numsiege=StringRegExp($hligne,'(?:Siège) ([0-9]{1,2})' )
mais ça me trouve 1 sur toutes les lignes. sinon j'ai 0. J'ai essayé plein de truc mais je n'y arrive pas.
On va commencer par ça et je vais essayer de chercher pour récupérer le reste.
Merci d'avance.
[R] Probleme avec les expressions régulières
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Probleme avec les expressions régulières
Modifié en dernier par Bayo le mer. 27 mai 2015 11:33, modifié 1 fois.
- jbnh
- Niveau 11

- Messages : 1932
- Enregistré le : ven. 02 mai 2008 14:54
- Localisation : Bruxelles
- Status : Hors ligne
Re: [..]Pb avec les expressions régulières
Je sais que souvent les expressions régulières sont plus fiables, mais pourquoi ne pas simplement commencer avec un
Local $aArray = _StringBetween("Siège 2 : XXXXXX (1500 en jetons)", "Siège ", " :")
Si cela peut vous debloquer...
Local $aArray = _StringBetween("Siège 2 : XXXXXX (1500 en jetons)", "Siège ", " :")
Si cela peut vous debloquer...
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !
Merci
Merci
Re: [..]Pb avec les expressions régulières
ben en faite c'est ce que je suis en train d'essayer. Quand je test ta ligne ça fonctionne mais quand je passe par
Local $aArray = _StringBetween($hligne, "Siège ", " :")
_ArrayDisplay($aArray)
$hligne contient bien le même format que je t'ai donné mais _arraydisplay ne s'affiche pas
Edit : après plusieurs tests si je met en dur une ligne dans $ligne par exemple et que je tape Local $aArray = _StringBetween($ligne, "Siège ", " :") ça marche
quand je le fait avec une ligne lu dans mon fichier texte Local $aArray = _StringBetween($hligne, "Siège ", " :") ça marche pas
Si j'enlève l'espace avant les : Local $aArray = _StringBetween($hligne, "Siège ", ":") ça marche mais si je fait un Stringlen du résultat il me remonte 2 caractère...
Je comprend pas tout là :'(
Local $aArray = _StringBetween($hligne, "Siège ", " :")
_ArrayDisplay($aArray)
$hligne contient bien le même format que je t'ai donné mais _arraydisplay ne s'affiche pas
Edit : après plusieurs tests si je met en dur une ligne dans $ligne par exemple et que je tape Local $aArray = _StringBetween($ligne, "Siège ", " :") ça marche
quand je le fait avec une ligne lu dans mon fichier texte Local $aArray = _StringBetween($hligne, "Siège ", " :") ça marche pas
Si j'enlève l'espace avant les : Local $aArray = _StringBetween($hligne, "Siège ", ":") ça marche mais si je fait un Stringlen du résultat il me remonte 2 caractère...
Je comprend pas tout là :'(
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..]Pb avec les expressions régulières
Y compris lire la doc de StringRegExp, en particulier ce qui concerne le troisième paramètre ?Sur cette ligne j'essaye de récupérer le numéro du siège je suis pour le moment sur ça $numsiege=StringRegExp($hligne,'(?:Siège) ([0-9]{1,2})' )
mais ça me trouve 1 sur toutes les lignes. sinon j'ai 0. J'ai essayé plein de truc mais je n'y arrive pas.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..]Pb avec les expressions régulières
Bon je viens de m'en sortir avec $numsiege = StringRegExp($hligne,'Siège (\d{1,2})', $STR_REGEXPARRAYGLOBALMATCH).
Maintenant la chaîne de caractère, je laisse le sujet un peu ouvert, si je m'en sort pas.
Merci
Edit : Bon ça à l'air d'aller, merci je résout
Maintenant la chaîne de caractère, je laisse le sujet un peu ouvert, si je m'en sort pas.
Merci
Edit : Bon ça à l'air d'aller, merci je résout

