FAQ Windows BatchConsultez toutes les FAQ

Nombre d'auteurs : 11, nombre de questions : 104, dernière mise à jour : 30 mars 2017 

 
OuvrirSommaireFonctions utiles

Voici quelques fonctions pour traiter les chaînes de caractères :

 
Sélectionnez

@echo off & setlocal enabledelayedexpansion enableextensions
 
set "str=%*"
if not defined str (set /p str=Entrez une chaine: %)
echo.
 
call :length  "%str%"
call :count   "%str%"
call :reverse "%str%"
call :ucase   "%str%"
call :2hexa   "%str%"
 
set length
set [
set reverse
set ucase
set hexa
 
pause
endlocal & goto:eof
 
:length
for /f "tokens=1* delims=][" %%a in ('
  "%comspec% /u /c echo:%~1|more|find /n /v """
 ') do Set /A "length=%%a-4"
goto:eof
 
:count
for /f %%: in ('
  "%comspec% /u /c echo:%~1|more|sort"
 ') do Set /A "[%%:]+=1"
goto:eof
 
:reverse
for /f "tokens=1* delims=:" %%a in ('
    "%comspec% /u /c echo:%~1|more|findstr /o ."
 ') do Set "reverse=%%b!reverse!"
goto:eof
 
:ucase
for /f "tokens=1* delims=µ" %%a in ('
      "tree \µµµ%1|find ":\""
 ') do Set "ucase=%%b"
goto:eof
 
:2hexa
<nul>$asc$ set/p"=%~1"
for /l %%i in (1 1 %length%) do <nul>>$hex$ set/p"=µ"
for /f "skip=1 tokens=3" %%i in ('
     fc /b $hex$ $asc$
 ') do Set "hexa=!hexa!%%i-"
set "hexa=%hexa:~0,-1%" & del $asc$ $hex$
goto:eof

fonction Length : affiche le nombre de caractères saisie

fonction count : compte le nombre de lettre dans la chaine

fonction reverse : inverse la chaine

fonction ucase : transforme la chaîne en majuscule

fonction hexa : affiche la valeur hexadecimal de chaque lettre

Créé le 24 octobre 2010  par I'm_HERE

Le code ci-dessous convertit la valeur hexadécimale 2F5 en décimal :

 
Sélectionnez

set hexa=2F5
set /a valeur=0x%hexa%
echo %valeur%
Créé le 25 octobre 2010  par maxim_um
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2013 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.