[VB] extraer la cadena después del último \

sophie26 -  
 alamata -
Hola,
Busco extraer de una cadena cualquier el contenido que sigue después del último \ de mi cadena.
Uso en mi código las funciones Instr, mid y toda la familia, pero creo que estoy dando vueltas,
Gracias a quien me vuelva al buen camino ^^

sophie,
Configuración: Windows XP Internet Explorer 7.0

4 respuestas

  1. Steff
     
    Hola Sophie,

    La variable "chaine" contiene el texto del que queremos obtener el final.
    2 formas:

    - Forma "habladora" :

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

    - Forma menos "habladora" :
    resultat=(Mid(chaine,InStrRev(chaine,"\\\"")))

    A verificar si no hay que hacer +1 a pos ...
    2
  2. amigo
     
    Hola,

    La función extraer_dernier abajo devuelve el último elemento de una cadena cuyo cada campo está separado por "\" como en la ruta de un archivo
     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
    1. alamata
       
      hola a todos,....

      completo novato en vb

      me gustaría saber cómo llamar a esta función...

      porque este fragmento de código responde perfectamente a mis necesidades ,...

      disculpen por hacer este tipo de pregunta pero hay que empezar en algún momento

      en espera impaciente
      de una pista de resolución
      0
  3. zavenger Mensajes publicados 817 Estado Miembro 161
     
    Hola,

    ¿Qué lenguaje exactamente utilizas?

    en vbs eso daría algo como esto right(toto,len(toto)-InStrRev(toto,"\")

    Espero que eso te ayude
    0
  4. sophie26
     
    Es para VB6, miro todo directamente, gracias.
    0