Page 1 sur 1

[R] Récupérer et stocker dans une variables des mots précis

Posté : dim. 25 mai 2014 12:25
par HkR
Bonjour àvous (et oui c'est encore moi), et j'implore votre aide, pour quelque chose que je n'arrive vraiment pas à faire.
Je vais prendre un exemple avec du php pour ceux qui connaissent, il y a une fonction qui s'appelle strtok, cette fonction, on l'utilise pour récupérer une chaîne de caractère délimitée par du contenu.
On a un fichier texte qui contient la ligne suivante:
test:test1
Si on fait:
$fichier=file("texte.txt")
$test1=strtok($fichier,":")
On indique en fait que la variable test1 sera égale à tout ce qui se trouve devant le : dans le fichier texte.txt,
donc elle sera égale à test...
Ce que j'aimerais, c'est faire la même chose avec autoit, je me suis bien sur renseigné, mais quand j'essaye avec la fonction stringsplit:
$test = StringSplit($fichier, ":")
et que je fais msgbox(0,"",$test) ça ne m'affiche rien alors que normalement, ça devrait m'afficher la chaîne de caractère "test"...
J'espère avoir été assez clair dans mon problème, merci d'avance pour votre aide :)

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:13
par jchd
Voir l'aide : StringSplit renvoie un tableau, à visualiser avec _ArrayDisplay.
Sinon, il y a aussi StringRegExp et StringRegExpReplace qui peuvent s'avérer franchement utiles.

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:13
par Ks10
Bonjour,

As-tu essayer :

Code : Tout sélectionner

FileOpen(@ScriptDir & "\monfichier.txt", 0)
$test = FileRead(@scriptdir & "\monfichier.txt")
Msgbox(64, "Informations", $test)
Cela devrait fonctionner normalement.

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:17
par aulus
Voici le code pour récupérer les deux éléments de la ligne $ligne = "partie1 : partie2"

Code : Tout sélectionner

$test = StringSplit($ligne, ":")
msgbox(0,"",$test[1]) 
msgbox(0,"",$test[2]) 
 

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:39
par HkR
Merci à tous pour vos réponses, j'ai essayé le fileread, mais le problème c'est que ça mets en variable toute une ligne, moi il me
faudrait une partie de la ligne dans une variable, la seconde dans une autre.
J'ai testé ton code aulus, c'est ce que je cherche, mais le problème c'est qu'à la fin, j'obtiens ça:
http://i.imgur.com/Ad1pVeD.png (ce que stringsplit était censé affiché), voilà, si vous avez des solutions je suis preneur...
Merci à vous 3.
Edit: J'ai visualisé via _arraydisplay, et j'ai eu la valeur "1" au lieu de test, avec stringsplit...

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:43
par jchd
Edit: J'ai visualisé via _arraydisplay, et j'ai eu la valeur "1" au lieu de test, avec stringsplit...
Relire l'aide dans ce cas...

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 13:51
par aulus
Ce code fonctionne (à tester tel quel) :

Code : Tout sélectionner

Global $ligne = "partie1 : partie2"
Global $test = StringSplit($ligne, ":")
msgbox(0,"",$test[1])
msgbox(0,"",$test[2])
 

Re: [..]Récupérer et stocker dans une variables des mots pré

Posté : dim. 25 mai 2014 14:05
par HkR
C'est bon, résolu, merci à vous :) (le code de aulus), sinon, en effet, je vais revoir ces fonctions. ^^