[VB] extraire chaine après le dernier \

Fermé
sophie26 - 7 mai 2008 à 16:56
 alamata - 28 oct. 2008 à 15:06
Bonjour,
Je cherche à extraire d'une chaine quelquonque le contenu suivis après le dernier \ de ma chaine.
J'utilise dans mon code les fonction Instr mid et toute la famille, mais je pensse tourner en rond,
Merci à celui qui me remettra dans le bon chemin ^^

sophie,

4 réponses

Bonjour Sophie,

La variable "chaine" contient le texte dont nous souhaitons récupérer la fin.
2 façons :


- Façon "bavarde" :

pos=InStrRev(chaine,"\")
resultat=(Mid(chaine,pos))


- Façon moins "bavarde" :
resultat=(Mid(chaine,InStrRev(chaine,"\")))

A vérifier s'il ne faut pas faire +1 à pos ...
2
Bonjour,

La fonction extraire_dernier ce dessous retourne le dernier élément d'une chaine dont chaque champ est séparé par "\" comme dans le chemin d'un fichier
Sub essai()
Dim chaine As String, schaine As String
chaine = "C:\Documents and Settings\Default User\Local Settings\Temporary Internet Files\Content.IE5"
schaine = extraire_dernier(chaine)
MsgBox schaine
End Sub

Function extraire_dernier(chaine As String) As String
Dim ipos As Integer, apos As Integer
apos = 0: ipos = 0
Do
   ipos = InStr(ipos + 1, chaine, "\")
   If ipos > 0 Then apos = ipos
Loop While ipos > 0
extraire_dernier = ""
If apos > 0 Then extraire_dernier = Right(chaine, Len(chaine) - apos)
End Function

A+.
1
bonjour a tous,....

debutant total en vb

je desirerais savoir comment appeler cette function...

car ce bout de code repond parfaitement a mes besoins ,...

desole de poser ce genre de question mais il faut bien debuter un jour

dans l'attente impatience
d'une piste de resolution
0
zavenger Messages postés 811 Date d'inscription vendredi 29 février 2008 Statut Membre Dernière intervention 20 avril 2012 161
7 mai 2008 à 17:14
Bonjour,

Quel langage exactement utilises-tu?


en vbs cela donnerais qque chose comme cela right(toto,len(toto)-InStrRev(toto,"\")

J'espere que cela va t'aider
0
C'est du pour vb6, je regarde le tout directement merci bien
0