Comment vérifier si une chaîne a plus de 5 caractères en Batch (.chauve-souris) Script
Je veux écrire un simple batch script qui vérifie si la chaîne d'entrée a plus de 5 caractères.
Quelque chose comme:
SET /P INPUT=Enter your string:
IF %INPUT% > 5 (
ECHO %INPUT% has more than 5 chars
) ELSE (
ECHO %INPUT% has less than 5 chars
)
Comment je peux effectuer ces vérifications .chauve-souris?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez regarder si il y a un personnage à la suite de la cinquième avec un simple sous-chaîne de l'opération:
Pas besoin de comprendre à la longueur de la chaîne si vous n'avez pas besoin de le nombre réel quelque part. Bien que jeb de l'approche pour obtenir la longueur est assez intelligent (et c'est exactement la même idée qui est utilisé ici).
%input:~5,1%
étendra à~5,1
.Mieux aussi de vérifierif defined INPUT...
Je suis sûr que vous avez déjà que l'obtention d'un la longueur de la chaîne à partir de l'entrée n'est pas très simple dans le fichier de commandes de script. Une approche facile est de tester si la première 5 caractères (ou tout x nombre de caractères) de la chaîne d'entrée est la même que la chaîne d'entrée. Par exemple:
Certes, cela ne fonctionnera pas pour tous de la logique de scénario, vous pourriez avoir besoin, mais son assez simple pour un certain nombre de scénarios. Pour info, j'ai ajouté le
[]
caractères afin d'éviter le vide des comparaisons de chaînes.Espère que ça aide...
%INPUT:~0,5%
étendra à~0,5
et vous obtiendrez une réponse incorrecte. Idéalement, vous devriez également vérifier si l'ENTRÉE est défini.C'est assez similaire à cette question. On dirait que vous n'avez qu'à écrire votre propre fonction pour qu', puis de comparer le résultat à 5. Heureusement, les réponses à cette question fourni une fonction pour vous.
Aussi, Google est votre ami.