[R] Dernière valeur d'un StringSplit().

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
mangaskiff
Niveau 4
Niveau 4
Messages : 72
Enregistré le : sam. 25 juil. 2009 23:45
Status : Hors ligne

[R] Dernière valeur d'un StringSplit().

#1

Message par mangaskiff »

Bonjour , j'aimerai récupérer la dernière valeur d'un StringSplit().

Exemple :
C:\yyyy\yy\yyy\yyy
C:\yyyy\yy\yyy\yyy\yyyy\yyy\yy

Je veux récupéré ce qui est soouligné mais je ne sais pas comment faire pour que sa s'adapte à n'importe que

chaîne.
Modifié en dernier par mangaskiff le sam. 11 août 2012 21:30, modifié 1 fois.
bouabouate
Niveau 1
Niveau 1
Messages : 12
Enregistré le : mer. 24 févr. 2010 14:05
Status : Hors ligne

Re: [..] Dernière valeur d'un StringSplit().

#2

Message par bouabouate »

Bonjour,

StringSplit ramène un tableau dont l'élément zéro contient l'indice du dernier élément du tableau.
Il suffit donc d'utiliser cet indice pour trouver la valeur du dernier élément du tableau.

Comme dans l'exemple:

Code : Tout sélectionner

#include <Array.au3>

$txt="c:\a\bb\ccc"

$split_array=StringSplit($txt,"\")

_ArrayDisplay( $split_array , "$split_array->" )

MsgBox(0,"Dernier-->",$split_array[$split_array[0]])
 
J'ai pas géré les cas particuliers dans mon exemple : chaine vide ou pas de séparateur trouvé mais l'idée est là.

Youala.
Habibsbib
Niveau 7
Niveau 7
Messages : 393
Enregistré le : dim. 30 août 2009 13:49
Localisation : Euh...Verticale, entre le siège et l'écran...
Status : Hors ligne

Re: [..] Dernière valeur d'un StringSplit().

#3

Message par Habibsbib »

ya plus facile ^^

Code : Tout sélectionner

$hash = StringSplit ("yy\yy\ee", "\")
Et ensuite :

Code : Tout sélectionner

$hash[_ArrayMAx($hash)]
Vous avez l'art de vous casser la tête vous autre ^^

(#include <Arrays.au3> au début par contre)
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 415
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

Re: [..] Dernière valeur d'un StringSplit().

#4

Message par jl56 »

Bonjour

j'avais trouvé cette info ici

http://www.autoitscript.fr/forum/viewto ... 93&start=0

je comprend rien mais ca marche super bien

Code : Tout sélectionner

$chemin_et_fichier="c:\windows\sytem32\test.dll"

$chemin= StringRegExpReplace($chemin_et_fichier, "[^\\]+\Z", "")
$fichier= StringRegExp($chemin_et_fichier, "[^\\]+\Z",3)
MsgBox(0,$chemin_et_fichier,"Chemin= "&$chemin&@crlf&"Fichier= "&$fichier[0])

a+ JL56
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Dernière valeur d'un StringSplit().

#5

Message par Tlem »

Rhoooo lalaaaaaa.
Habibsbib et jl56, pourquoi chercher à chaque fois les includes ou les trucs compliqués...

Puisque le StringSplit renvoi un tableau dont l'élément 0 donne le nombre total d'élément.
Il suffit de récupérer ce nombre et d'afficher l'élément lui correspondant. :P
► Afficher le texte
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Habibsbib
Niveau 7
Niveau 7
Messages : 393
Enregistré le : dim. 30 août 2009 13:49
Localisation : Euh...Verticale, entre le siège et l'écran...
Status : Hors ligne

Re: [..] Dernière valeur d'un StringSplit().

#6

Message par Habibsbib »

Lol ! je ne savais même pas que le premier array de la variable contenant un string split renvoyait le nombre de lignes de l'array ^^

Je devrais me renseigner...
Répondre