Script batch: lunghezza della stringa

Nello scripting DOS, non esiste una funzione di lunghezza definita per trovare la lunghezza di una stringa. Ci sono funzioni definite dall'utente che possono essere utilizzate per lo stesso. Di seguito è riportato un esempio di una funzione definita dall'utente per vedere la lunghezza di una stringa.

Esempio

@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

Alcune cose chiave da tenere a mente riguardo al programma sopra sono:

  • Il codice effettivo che trova la lunghezza della stringa è definito nel blocco: strLen.

  • La lunghezza della stringa viene mantenuta nella variabile len.

Produzione

Il comando precedente produce il seguente output.

11