Secuencia de comandos por lotes: longitud de la cadena

En las secuencias de comandos de DOS, no hay una función de longitud definida para encontrar la longitud de una cadena. Hay funciones personalizadas que se pueden utilizar para lo mismo. A continuación, se muestra un ejemplo de una función personalizada para ver la longitud de una cadena.

Ejemplo

@echo off
set str = Hello World
call :strLen str strlen
echo String is %strlen% characters long
exit /b

:strLen
setlocal enabledelayedexpansion

:strLen_Loop
   if not "!%1:~%len%!"=="" set /A len+=1 & goto :strLen_Loop
(endlocal & set %2=%len%)
goto :eof

Algunas cosas clave a tener en cuenta sobre el programa anterior son:

  • El código real que encuentra la longitud de la cadena se define en el bloque: strLen.

  • La longitud de la cadena se mantiene en la variable len.

Salida

El comando anterior produce la siguiente salida.

11