Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: the_Avenger en 6 Octubre 2011, 01:22 am



Título: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: the_Avenger en 6 Octubre 2011, 01:22 am
Les explico quiero hacer un cifrador y descifrador para cualquier nombre que el usuario ingrese.
Pero ¿que pasa? yo quiero que disperse las letras y luego las mezcle con otras pero el problema es que el usuario puede ingresar la cantidad de caracteres que quiera cuando yo pido el nombre. Entonces mi pregunta es ¿Se puede limitar la cantidad de caracteres para una variable? y de ser asi ¿Como?


Desde ya muchas gracias espero haber sido claro.


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: 2Fac3R en 6 Octubre 2011, 02:08 am
Lenguaje....?


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: the_Avenger en 6 Octubre 2011, 03:06 am
A perdon me habia olvidado de eso. Estoy usando batch paraprogramar. Y por las dudas ya se no es lo mejor pero estoy aprendiendo a usarlo por eso pregunto como hacerlo en este.


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: 2Fac3R en 8 Octubre 2011, 02:26 am
No entendi lo de:

Les explico quiero hacer un cifrador y descifrador para cualquier nombre que el usuario ingrese.
Pero ¿que pasa? yo quiero que disperse las letras y luego las mezcle con otras...


Lo de limitar la cantidad de caracteres de una variable en batch, pues se podria hacer con el tokens del FOR, contar los caracteres y con un condicional IF hacer cierta cosa si es Igual o menor (<=) a la cantidad limitante, y sino hacer otra cosa.
No se si me explico, si alguien nos pudiera ayudar con el code seria perfecto, estare probando a ver si logro algo..
Zalu2


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: Darioxhcx en 8 Octubre 2011, 03:48 am
o podes pedir la introduccion de una variable y solo usar los primeros 16 caracteres.. aunque escriban 78 supongamos, solamente estarias usando los 16

%variable:~0,15%


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: the_Avenger en 8 Octubre 2011, 13:58 pm
Bueno gracias por los datos me gusta mas la idea del tokens el tema es que no entiendo muy bien como se usa el FOR.


Título: Re: Limitar caracteres de una variable ¿Como hago?
Publicado por: 2Fac3R en 9 Octubre 2011, 21:53 pm
Buscando por el foro, di con este code de M a a t:


Código
  1. setlocal enabledelayedexpansion
  2. set "count=0"
  3. set "string=Hello World"
  4. :loop
  5. if "!string:~% style="color: #448888;">count%,1!" neq "" set /a "count+=1" & goto loop
  6. echo:La cadena "%string%" contiene %count% caracteres.
  7.  

La verdad no entiendo mucho cuando se usa el setlocal, asi que no se como acomodarlo a lo que se necesita, aunque la opcion que nos da darioxhcx es mejor y sin tanta complicacion.  :xD

Nota: Sigo sin entender lo de esparsir y luego juntar los caracteres  :¬¬

Edito:

Encontre otra solucion mejor y con un code mas para nosotros  :xD
Leo Gutierrez
Código
  1. @echo off
  2. :code
  3. set /p "cadena=Cadena : "
  4. if not defined cadena goto:code
  5. set /a "contador=0"
  6. :bucle
  7. set "cadena=%cadena:~1%"
  8. set /a "contador+=1"
  9. if defined cadena goto:bucle
  10. echo Longitud : %contador%
  11. pause>nul
  12. exit /b 0

Es muy bueno el code y simple y entendible.
Zalu2


Título: Re: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: the_Avenger en 9 Octubre 2011, 22:31 pm
Bueno esto no limita al usuario pero cuenta los caracteres hasta que no encuentra mas en la variable no?


Título: Re: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: leogtz en 9 Octubre 2011, 22:51 pm
No hay manera de limitar la entrada a n carácteres, lo único que puedes hacer es encerrar al usuario en un ciclo hasta que haga lo que tú quieres, para ello tienes que contar los caracteres, y sino se cumple la condición le vuelves a pedir la entrada.


Título: Re: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: the_Avenger en 10 Octubre 2011, 02:10 am
A bueno esta bien. Una pregunta que es ese codigo que pusiste alli abajo?


Título: Re: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: leogtz en 10 Octubre 2011, 02:22 am
No puse nada, es mi firma.


Título: Re: Limitar caracteres de una variable ¿Como hago? [Batch]
Publicado por: the_Avenger en 12 Octubre 2011, 02:00 am
aaaa ya no sabia ni que era ajajjaja. Muchas gracias lo del contador de caracteres me servio mucho ahora puedo hacer que los cuente y me diga cuantos tiene y si no es el numero que yo pido que lo regrese a ingresar su nombre otra vez. Gracias a todos.