[R] Recherche "spécial" dans un tableau
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.
-
richie6700
- Niveau 4

- Messages : 57
- Enregistré le : ven. 21 janv. 2011 16:22
- Status : Hors ligne
[R] Recherche "spécial" dans un tableau
Bonjour à vous!!
Serait il possible de m'aidé??
Voici mon petit soucis :
J'ai un tableau du style :
groupe 1
groupe 12
groupe 121
groupe 2
groupe 7
groupe 71
groupe 735
ect ect
J'aurais voulu (en créant un autre tableau par exemple) ne lister que les groupe qui commence par groupe X YYY. Par exemple :
si je prend groupe 1, j'aimerais avoir un tableau qui n'indiquerer que :
groupe 1
groupe 12
groupe 121
Voila j'espère m'être bien fait comprendre....
Merci d'avance
Richie
Serait il possible de m'aidé??
Voici mon petit soucis :
J'ai un tableau du style :
groupe 1
groupe 12
groupe 121
groupe 2
groupe 7
groupe 71
groupe 735
ect ect
J'aurais voulu (en créant un autre tableau par exemple) ne lister que les groupe qui commence par groupe X YYY. Par exemple :
si je prend groupe 1, j'aimerais avoir un tableau qui n'indiquerer que :
groupe 1
groupe 12
groupe 121
Voila j'espère m'être bien fait comprendre....
Merci d'avance
Richie
Modifié en dernier par richie6700 le lun. 16 mai 2011 17:09, modifié 1 fois.
- zeshrek
- Niveau 10

- Messages : 984
- Enregistré le : mer. 17 nov. 2010 09:31
- Localisation : Sur ma chaise
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
tu as regardé du coté de _arraysearch ou _arrayfindall ?
Si vis pacem para bellum
-
richie6700
- Niveau 4

- Messages : 57
- Enregistré le : ven. 21 janv. 2011 16:22
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Salut merci de ta réponse.
Mais je vois pas trop comment je peux faire avec Arraysearch.... Se serait possible d'utiliser le caratère "*"????
Ah oui... je ne suis pas très bon en développement....
Mais je vois pas trop comment je peux faire avec Arraysearch.... Se serait possible d'utiliser le caratère "*"????
Ah oui... je ne suis pas très bon en développement....
- matwachich
- Membre émérite

- Messages : 986
- Enregistré le : lun. 19 oct. 2009 04:04
- Localisation : Algérie
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Code : Tout sélectionner
StringInStr($ElemTableau[$i], "groupe 1")Code : Tout sélectionner
StringRegExp($ElemTableau[$i], 'groupe 1\d{0,}')Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
- ZDS
- Membre émérite

- Messages : 554
- Enregistré le : jeu. 10 juin 2010 10:35
- Localisation : 22300 Cul-d'chouette Langue-de-vache
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Bonjour !
La regexp est bonne, pas de souci.
Pour le reste de l'algo, il ne reste à faire qu'une une boucle toute simple.Voili voilou, je pense que tu t'en sortiras avec ça.
A bientôt !
La regexp est bonne, pas de souci.
Pour le reste de l'algo, il ne reste à faire qu'une une boucle toute simple.
► Afficher le texteScript
A bientôt !
Modifié en dernier par ZDS le lun. 16 mai 2011 16:52, modifié 1 fois.
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
- zeshrek
- Niveau 10

- Messages : 984
- Enregistré le : mer. 17 nov. 2010 09:31
- Localisation : Sur ma chaise
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Sinon, tiens, du tout cuit :
Désolé, j'utilise pas les regexp. J'ai jamais capté comment ca marche, du coup, je fais autrement.
Ceci dit, il suffit de modifier la ligne avec le 'if' dans la boucle de parsing du tableau avec l'expression réguliere et ca devrait aller aussi...
Code : Tout sélectionner
#include <Array.au3>
; on prépare un tableau avec 150 entrées aléatoires histoire d'avoir qqchose a chercher
dim $Array[151]
for $i = 0 to 150
$Array[$i] = "Groupe "&Random(1,500,1)
Next
; on te demande ce que tu veux (là il faut juste taper les chiffres, donc pour reprendre ton exemple : 1, ou 25...etc
$search= InputBox("","Début du n° du groupe a trouver")
; on prépare le tableau pour la sortie de ce qu'on trouve
; colonne 1 le N° d'index du tableau d'origine, colonne 2 le nom de groupe trouvé
$nbrec = 1
dim $trouve[1][2]
$trouve[0][0]="N° dans 'Array'"
$trouve[0][1]="Nom du groupe"
; et là on cherche a la mimine en parsant le tableau, et en en replissant le second au fur et a mesure
for $i =0 to Ubound($Array)-1
if StringLeft($Array[$i],stringlen("Groupe "&$search))="Groupe "&$search Then
redim $trouve[$nbrec+1][2]
$trouve[$nbrec][0]=$i
$trouve[$nbrec][1]=$Array[$i]
$nbrec=$nbrec+1
EndIf
Next
; pour finir, on affiche le résultat
_ArrayDisplay($trouve, "Groupes commencant par "&$search)Ceci dit, il suffit de modifier la ligne avec le 'if' dans la boucle de parsing du tableau avec l'expression réguliere et ca devrait aller aussi...
Si vis pacem para bellum
- ZDS
- Membre émérite

- Messages : 554
- Enregistré le : jeu. 10 juin 2010 10:35
- Localisation : 22300 Cul-d'chouette Langue-de-vache
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Re, grillé au moment de l'edit ^^ mais bon, autant améliorer le traitement dès le départ comme ZeShrek le propose :
Code : Tout sélectionner
if StringRegExp($Array[$i], "^(?i)groupe "&$search&"\d*$") ThenZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
-
richie6700
- Niveau 4

- Messages : 57
- Enregistré le : ven. 21 janv. 2011 16:22
- Status : Hors ligne
Re: [...] Recherche "spécial" dans un tableau
Ecouter !!! je vous remercie à tous, vous m'avez tous très très bien aidé!!!
A la prochaine pour des nouvelles aventures !!!!
A la prochaine pour des nouvelles aventures !!!!
