Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: .:UND3R:. en 9 Mayo 2011, 19:37 PM

Título: separar información que el usuario ha introducido [batch]
Publicado por: .:UND3R:. en 9 Mayo 2011, 19:37 PM
como puedo hacer que un batch separe datos o información que un usuario digitó
me explico

un usuario escribe hola
lo escrito se separa en 4 datos:
h
o
l
a


gracias
Título: Re: separar información que el usuario ha introducido [batch]
Publicado por: SuperDraco en 9 Mayo 2011, 21:19 PM
No entiendo tu pregunta, lo que quieres es separar la palabra introducida para que se muestre el texto en vertical?



Código (dos) [Seleccionar]

@echo off

Set variable=hola

echo %variable:~0,1%
echo %variable:~1,1%
echo %variable:~2,1%
echo %variable:~3,1%

pause



PD: Con un FOR /F lo puedes perfeccionar para saber cuantos dígitos "mide" la palabra/frase/datos introducidos para no tener que ir escribiendo lo que te puse.
Título: Re: separar información que el usuario ha introducido [batch]
Publicado por: .:UND3R:. en 10 Mayo 2011, 01:07 AM
Gracias lo probaré :)

muchas gracias
Título: Re: separar información que el usuario ha introducido [batch]
Publicado por: leogtz en 10 Mayo 2011, 01:07 AM
Algo automatizado...
Código (dos) [Seleccionar]
@echo off
setlocal enabledelayedexpansion
:code
set /p "string=s : "
if not defined string (goto:code)

set temp=%string%

set contador=0
:size
if not defined string (goto:end)
set string=%string:~1%
set /a contador+=1
goto:size

:end
set /a contador-=1
for /l %%_ in (0, 1, %contador%) do (
echo !temp:~%%_,1!
)
pause


Título: Re: separar información que el usuario ha introducido [batch]
Publicado por: .:UND3R:. en 10 Mayo 2011, 01:16 AM
como siempre salvandome gracias Leo :D
Título: Re: separar información que el usuario ha introducido [batch]
Publicado por: aNT366 en 10 Mayo 2011, 04:00 AM
A MI MANERA:

@ECHO OFF
SET PALABRA=MARICA EL ULTIMO
ECHO.& ECHO  PAL:  %PALABRA%& ECHO.

: BUCLE
    CALL SET PAL=%%PALABRA:~%CONT%,1%%
    SET /A CONT+=1
    IF DEFINED PAL (ECHO  STR:  %PAL%
 GOTO :BUCLE)

PAUSE>NUL