Expression reguliere Script shell

thetontonben -  
 thetontonben -
Bonjour,
j' ai une variable qui contient une chaine de caractere, et je veux verifier qu'elle est bien alphanumerique. Je veux donc faire une comparaison de la variable avec une expression reguliere.
Comment faire??
merci

thetontonben

1 réponse

  1. jisisv Messages postés 3678 Statut Modérateur 936
     
    Essaye quelque chose du genre:
    machaine="azerty" ;echo $machaine |grep '^[[:alnum:]]*$' >/dev/null ; echo $?

    La variable de retour $? contient
    man grep
    <snip>
    DIAGNOSTICS
    Normally, exit status is 0 if matches were found, and 1 if no matches were found. (The -v option inverts the sense of the exit status.) Exit status is 2 if there were syntax errors in the pattern, inaccessible input files, or other system errors.
    </snip>

    Johan
    The software said "Requires Windows98, Win2000, or better,
    So I installed Unix.
    1
    1. thetontonben
       
      Merci c'est une bonne idée,
      entre temps j'avais trouvé :

      echo "\tNom de l'utilisateur a creer (\"quit\" pour sortir): \c"
      read NM_USR
      b=`expr match "$NM_USR" '\([a-zA-Z0-9/-]*\)'`
      if [ "$NM_USR" != "$b" ]
      then
      echo "syntaxe error"
      else
      echo "syntaxe ok"
      fi;

      Par contre je n'arrive pas à integrer l'apostrophe comme caractere dans mon expression reguliere

      As tu une idée?

      Merci

      Thetontonben
      0