IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

test findstr sur caractères spéciaux


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Par défaut test findstr sur caractères spéciaux
    Bonjour à tous : )
    Je viens solliciter un peu d'aider au près d'expert pour un petit problème. Je souhaite programmer une petite calculette qui calcul les décimaux en Bat. Et je bloque sur la vérification de la bonne saisie du calcul.
    Je voudrais vérifier qu'il n'y a pas eu mauvaise saisie de caractères spéciaux: & ~ " # ' { ( [ - | ` _ \ ^ @ ) ] = } , ? ; . / : § ! > <
    Et je bloque avec Caractères spéciaux et Echappement de caractères (ex: %% pour % - ^& pour & ...)

    Ce test se réalise au niveau de la ligne 37 - 41


    Merci d'avance pour votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    @echo off
    title Bat - Calculette decimaux
    mode con cols=70 lines=30
    
    :0
    cls
    echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
    echo º                                                                    º
    echo º                  SCRIPT - BAT-BILAN_PLANNING.BAT                   º
    echo º           Script bat Calculette pour calculs decimaux              º
    echo º                                                                    º
    echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
    set /p op=.          Saisir votre operation:
    
    :: B >>TESTS SAISIS CALCUL USER<<
    echo %op% | findstr "+ - * /" > nul 
      if errorlevel 1 (set testA=kO)
        If not errorlevel 1 (set testA=OK)
    echo %testA%
    echo %errorlevel%
    pause
        
    echo %op% | findstr /r [0-9] > nul 
      if errorlevel 1 (set testB=KO)
        If not errorlevel 1 (set testB=OK)
    echo %testB%
    echo %errorlevel%
    pause
        
    echo %op% | findstr /r [a-z] > nul 
      if errorlevel 1 (set testC=OK)
        If not errorlevel 1 (set testC=KO)
    echo %testC%
    echo %errorlevel%
    pause    
    
    echo %op% | findstr "@"  > nul 
      if errorlevel 1 (set testD=KO)
        If not errorlevel 1 (set testD=OK)
    echo %testD%
    echo %errorlevel%
    pause    
    
    for /f "delims=" %%a in ('powershell %op%') do (echo .           %op% = %%a)
    Pause
    goto 0
    Pause

  2. #2
    Nouveau candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Par défaut
    Bonjour,
    J'ai cela pour l'instant. Par la suite je vais créer un jeux de 10 calculs aléatoire avec attribution d'un score.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    @echo off
    title Bat - Calculette decimaux
    mode con cols=70 lines=30
    
    :0
    cls
    echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
    echo º                                                                    º
    echo º                  SCRIPT - BAT-BILAN_PLANNING.BAT                   º
    echo º           Script bat Calculette pour calculs decimaux              º
    echo º                                                                    º
    echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
    set /p op=.          Saisir votre operation:
    
    :: B >>TESTS SAISIS CALCUL USER<<
    echo %op% | findstr "+ - * /" > nul 
      if errorlevel 1 (set testA=KO)
        If not errorlevel 1 (set testA=OK)
    ::echo Test saisie signe: %testA%
    ::echo %errorlevel%
    ::pause
        
    echo %op% | findstr /r [0-9] > nul 
      if errorlevel 1 (set testB=KO)
        If not errorlevel 1 (set testB=OK)
    ::echo Test saisie chiffre: %testB%
    ::echo %errorlevel%
    ::pause
        
    echo %op% | findstr /r [a-z] > nul 
      if errorlevel 1 (set testC=OK)
        If not errorlevel 1 (set testC=KO)
    ::echo Test saisie lettre: %testC%
    ::echo %errorlevel%
    ::pause    
    
    echo %op% | findstr "@ %% $ # : ! ;"  > nul 
      if errorlevel 1 (set testD=OK)
        If not errorlevel 1 (set testD=KO)
    ::echo Test saisie caracteres particuliers: %testD%
    ::echo %errorlevel%
    ::pause
    
    ::echo %testA%%testB%%testC%%testD%
    ::Pause
    
    echo %testA%%testB%%testC%%testD% | findstr OKOKOKOK > nul
        if errorlevel 1 (echo ERREUR. Veuillez resaisir l'operation. & pause & goto 0)
          if not errorlevel 1 (set TEST=%testA%%testB%%testC%%testD%)
    ::echo %TEST%
    ::pause
    
    :: C >>REALISATION CALCUL DECIMAUX<<
    for /f "delims=" %%a in ('powershell %op%') do (echo .           %op% = %%a)
    Pause
    goto 0
    Pause

Discussions similaires

  1. test javascript : test d'une valeur entrée
    Par KH_WE dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 29/07/2009, 19h52
  2. Réponses: 1
    Dernier message: 01/06/2009, 17h43
  3. Réponses: 3
    Dernier message: 07/12/2007, 18h12
  4. [Test]Recherche test de Geekitude..
    Par Fleur-Anne.Blain dans le forum La taverne du Club : Humour et divers
    Réponses: 163
    Dernier message: 17/10/2006, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo