Foros del Web » Programación para mayores de 30 ;) » Programación General »

VB: Problemas con Cadenas

Estas en el tema de VB: Problemas con Cadenas en el foro de Programación General en Foros del Web. Hola otra vez, aquí estoy como buen novato angustiado con mis problemillas, hoy busco un poco de vuestra ayuda con un tema de cadenas en ...
  #1 (permalink)  
Antiguo 22/02/2003, 08:09
 
Fecha de Ingreso: febrero-2002
Mensajes: 25
Antigüedad: 22 años, 2 meses
Puntos: 0
VB: Problemas con Cadenas

Hola otra vez, aquí estoy como buen novato angustiado con mis problemillas, hoy busco un poco de vuestra ayuda con un tema de cadenas en Visual, a continuación os lo cuento:

Necesito que a partir de una cadena, que tengo almacenada en una variable que voy a llamar cad, obtener lo siguiente:

1) una nueva cadena que conste desde el primer caracter de cad hasta la primera F que encuentre.

2) conseguir que una vez obtenida la nueva cadena del primer paso, la cadena original se quede sin trozo de cadena que he aíslado.

3) que esto se produzca recursivamente.


He empezado así:


For i = 1 To Len(cad)
nuevacadena = Left(cad, (InStr(cad, f) - 1))
cad =

Next i

Sólo he sido capaz de estraer la nueva cadena pero no sé como actualizar cadena para que pase algo así:

cad="telefonocasafoca"
nuevacadena="tele"
cad="fonocasafoca"

Y todo esto en un bucle para ir cogiendo siempre los trozos hasta la f y actualizando despúes la cadena original, espero haberme explicado medianamente bien, si alguien me puede echar un cabo se lo agradecería, nada más.

Un saludo.
  #2 (permalink)  
Antiguo 22/02/2003, 12:20
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 5 meses
Puntos: 0
Function cortarApartir(desde,cadena,caracterCortador)
'esta funcion devuelve la porcion de cadena encontrada
'a partir de la aparicion del caracterCortador
'de la posicion especificada en desde.
dim enc
enc = instr(desde,cadena,caracterCortador)
cortarApartir = mid(cadena,enc + 1)
end Function

Function cortarHasta(desde,cadena,caracterCortador)
'esta funcion devuelve la porcion de cadena encontrada
'hasta el caracter especificado en caracterCortador.
'si el tamaño de la cadena es menor que el
'especificado en desde, entonces, corregir el error.
dim enc
If desde > len(cadena) Then
cortarHasta = cadena
ElseIf desde < len(cadena) Then
enc = instr(desde,cadena,caracterCortador)
cortarHasta = left(cadena,enc - 1)
Else
cortarHasta = cadena
end if
end function


Con esas funciones cortas la caden hasta el caracter que quieres, y con la otra cortas la cadena desde el caracter que quieres.

Creo que te puede ayudar... (pon desde = 1)
__________________
Tu portal de manga y anime.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:01.