elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Encasillar datos para una variable
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Encasillar datos para una variable  (Leído 1,588 veces)
likeu

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Encasillar datos para una variable
« en: 26 Septiembre 2006, 20:16 pm »

buenas

Necesitaria saber si alguno me puede ayudar con esto.


Tengo una cadena de texto y numeros, de cantidad indefinida.

Necesito saber los 3 primeros caracteres que tiene esa cadena, como podria hacer?


Ejemplo:

"PALABRA1.ESTA ES LA PALABRA UNO"


Necesitaria guardar en una variable X las 3 primeras letras, en este caso seria

Citar
X = "PAL"


========================

Tambien queria saber si se puede hacer con cualquier parte de la frase, por ejemplo.

Citar
X = "STA"
(de ESTA)


========================


Recuerden que la frase es aleatoria por lo tanto tiene un LARGO indefinido.




Likeu!


« Última modificación: 26 Septiembre 2006, 20:17 pm por likeu » En línea

NYlOn


Desconectado Desconectado

Mensajes: 842


OOOOHHHHHH, TARAGÜIIII xDDDDDD


Ver Perfil WWW
Re: Encasillar datos para una variable
« Respuesta #1 en: 26 Septiembre 2006, 23:31 pm »

Código:
'Suponiendo que Datos tiene eso de Palabra1...
X = Left(Datos, 3) 'Obtenes las 3 primeras letras

Y = Mid(Datos, 13, 3) 'Obtenes las 3 letras que estan a partir de la posicion 13


En línea

likeu

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Re: Encasillar datos para una variable
« Respuesta #2 en: 28 Septiembre 2006, 14:38 pm »

Claro, pasa que yo no se en donde va a estar loq ue necesito, entonces no puedo saber si es desde la posicion 13 o no. Entendes.


Dentro de la cadena, lo que necesito va a variar de lugar, e incluso, la cadena puede variar de tamaño.

==================

A modo de ejemplo. Suponiendo qeu la palabra a buscar es HOLA.


Citar
Af."//()&$HOLA145Gt0%$&CAS

ASHOLA$&2456&$#$TECGE!#

AO$&//PRET"%/CIREHOLA$#

AL!=$K/&%F!2553$)HOLA3985490F$#&%&$="DKSEJSJS



Cualquiera de esas cadenas podria ser valida.

Puede variar de posicion, y puede variar de tamaño.

Como lograria conseguir de esas cadenas la palabra "HOLA" en una variable, esa seria la pregunta.


====================
====================

Adoso otra pregunta.

Si tuviera una cadena como las de arriba, y supongamos que quiero BORRAR la palabra "HOLA" de las cadenas, se podria hacer de alguna manera?


/////////////////////////////////////////
EDITO
/////////////////////////////////////////

Tengo otra, si se que lo que necesito esta al principio de la cadena. Supongamos que necesito la palabra "HOLA" como antes.
Pero...... no se el tamaño de la cadena. como pondria en una variable toda la cadena retirando la palabra "HOLA"


Ejemplo:

Citar
HOLA1234567890
y quiero que me quede
Citar
1234567890
en la variable

o tengo

Citar
HOLA5284756AFJEOPROT12
y quiero qeu me quede
Citar
5284756AFJEOPROT12


/////////////////////////////////////////////////

Se que es mucho, pero espero que me puedan ayudar

Mil gracias por la atencion =)



Likeu!
« Última modificación: 28 Septiembre 2006, 15:19 pm por likeu » En línea

NYlOn


Desconectado Desconectado

Mensajes: 842


OOOOHHHHHH, TARAGÜIIII xDDDDDD


Ver Perfil WWW
Re: Encasillar datos para una variable
« Respuesta #3 en: 29 Septiembre 2006, 01:14 am »

A ver si te entendi:
¿Lo que queres hacer es buscar una palabra que puede ser HOLA o cualquier otra, que no esta delimitada por ningun caracter y que NO LA CONOCES?
En línea

Syphroot

Desconectado Desconectado

Mensajes: 268


All You Need To Do Is Follow The Worms


Ver Perfil WWW
Re: Encasillar datos para una variable
« Respuesta #4 en: 29 Septiembre 2006, 03:11 am »

Pues la solucion es la misma que te proponen, con las instrucciones:

Mid
Left
Right

puedes hacer todo eso, en apoyo, para localizar los caracteres iniciales de la cadena que buscas se hace con

InStr

esa instruccion te devuelve la posicion de la primer ocurrencia que encuentra, si no encuentra nada devuelve cero.

por ejemplo tu cadena es:

szStr = "345&%$#26HOLA8)('¡"

' Tu quieres sacar la cadena HOLA, para esto debemos suponer que la cadena que quieres extraer ya la conoces no?, por lo tanto puedes conocer su longitud, y no solo de esta sino de cualquier cadena!!!!

Citar
Dim szStr       As String
Dim szSaca      As String
Dim szNueva     As String
Dim long1       As Long
Dim long2       As Long
Dim lPos        As Long

szStr = "345&%$#26HOLA8)('¡"
szSaca = "HOLA"
long1 = Len(szSaca)
long2 = Len(szStr)

lPos = InStr(1, szStr, szSaca)

If lPos > 0 Then    ' si hay ocurrencias

    szNueva = Mid(szStr, lPos, long1)

Else

    szNueva=""

End If

Bien, ese es el codigo para extraer la cadena la parte HOLA de la cadena PERO... tienes que tomar muchas mas cosas en cuenta pues quiza haya patrones repetidos de la misma cadena y extraigas lo que no es necesario... en conclusion, InStr es la solucion a lo que quieres, estudia esta funcion y con las otras 3 podras hacer muchas cosas con cadenas....

saludos
En línea

likeu

Desconectado Desconectado

Mensajes: 75



Ver Perfil
Re: Encasillar datos para una variable
« Respuesta #5 en: 29 Septiembre 2006, 03:31 am »

Exelente, gracias.

Voy a tener que revisar un poco esas funciones asi me las arreglo solo...


Gracias por el tiempo muchachos.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Datos en variable
Programación C/C++
NewBe 2 2,021 Último mensaje 14 Octubre 2011, 19:30 pm
por NewBe
Seprar datos en una variable
Programación Visual Basic
e500 4 2,733 Último mensaje 5 Abril 2013, 05:11 am
por e500
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines