Cadena dentro de otra cadena en cualquier posición

Necesito encontrar una función que me permita extraer determinada cantidad de caracteres de una cadena, dependiendo de la posición. Existe LEFT y RIGHT, pero necesito obtener los datos de cualquier posición. Ejemplo

Si tengo la cadena:

A="Esta es mi cadena [        ]  principal [      ]  para el ejemplo"

¿Cómo almaceno en una variable B cualquier cantidad de caracteres?, es decir necesito obtener los todos caracteres que se encuentren antes del primer corchete y todos los que se encuentren antes del segundo corchete que abre, pero antes del primero que cierra, esto es:

Necesito extraer: Esta es mi cadena

Y principal.

Es decir

B= "Esta es mi cadena"

C="Principal"

D= "Para el ejemplo"

Notar que el tamaño de la cadena tanto la de origen como la que se extrae puede variar, tanto de contenido como de longitud.

Ojalá pudieran echarme una manita...

El Substr (No me funcionó)

PD. Los datos los obtengo de un campo tipo MEMO... Extraigo los datos y los almaceno en un arreglo

De tamaño N, es decir, tantos renglones y columnas como tenga el campo MEMO

1 Respuesta

Respuesta
1

B = Alltrim(Getwordnum(A,1,"["))
C = Alltrim(Strtran(Getwordnum(A,2,"["),"]"))
D = Alltrim(Strtran(Getwordnum(A,3,"["),"]"))

¡Ooorale...!

SysGen Argentina

¡Muchas gracias !

No entiendo la sintaxis pero ahorita le doy una revisadita... Sólo le quite el alltrim porque necesito también los espacios en blanco, es decir, si la cadena fuera:

A=" OBTUVO : [ ] % DE UN TOTAL DE [ ] % ESPERADO"

Debo almacenar algo así:

B="                      OBTUVO :"

Excelente... Gracias nuevamente.

Saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas