¿Cómo eliminar los n últimos/primeros caracteres de una cadena?

Iniciado por BALTA00, 19 Mayo 2017, 09:46 AM

0 Miembros y 1 Visitante están viendo este tema.

BALTA00

Quisiera saber como hacer para eliminar bien sea los primeros XXX caracteres del principio o fin de una cadena, por ejemplo...

Código (Dos) [Seleccionar]
@Echo off
Set /P "VALOR1=INTRODUCE 12 CARACTERES:"

:VALOR_A
REM Eliminar 5 Digitos al Inicio
SET /A "VALOR_A"=%VALOR1% ELIMINAR 5 CARACTERES AL INICIO


:VALOR_B
REM Eliminar 5 Digitos al FINAL
SET /A "VALOR_B"=%VALOR1% ELIMINAR 5 CARACTERES AL FINAL

echo Resultado1 = %VALOR_A%
echo Resultado2 = %VALOR_B%


A ver si me explico, quisiera que el usuario al Introducir por ejemplo:
ABCDEFGHIJKL
Pueda eliminarse 5 caracteres al inicio y 5 al final, de modo que quede:
VALOR_A = FGHIJKL
VALOR_B = ABCDEFG

Lo que no consigo averiguar es como hacer para eliminar caracteres bien sea al inicio o al final, y posteo por acá a ver si tengo la suerte que alguien entienda lo que estoy buscando y me de una mano... ¿Alguno sabe algo? De antemano le doy las gracias a quienes respondan

Eleкtro

#1
Lo que quieres hacer se denomina Substring.

Código (dos) [Seleccionar]

@Echo Off

Set "var=1234567890"
Set "left=%var:~5%"    & REM Eliminar 5 caracteres empezando por la izquierda.
Set "right=%var:~0,5%" & REM Eliminar 5 caracteres empezando por la derecha.

echo var..: %var%
echo left.: %left%
echo right: %right%

Pause & Exit /B 0


Saludos!








BALTA00

Muchas gracias Elektro, eso es justamente lo que preguntaba, no conocía su nombre por eso era difícil buscarlo, tu ejemplo sirvió perfecto para entenderlo y hacer lo que quería, nuevamente muchas gracias  ;-)