Expressions rationnelles.

From Tuxunix
Jump to: navigation, search

Exemple


$ ./regex.sh 
Enter IP Address V4 : 192.168.1.2
Address 192.168.1.2 valide
$ ./regex.sh 
Enter IP Address V4 : 192/168.1.2
Address 192/168.1.2 non valide !
$ ./regex.sh 
Enter IP Address V4 : 192.1688.1.2
Address 192.1688.1.2 non valide !
   1.#! /bin/sh
   2.function verifIp(){
   3.       
   4.local ip=""
   5.local result=""
   6.       
   7.echo -n "Enter IP Address V4 : "
   8.read ip
   9.       
  10.echo "$ip" | grep -x "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}" > /dev/null 2>&1
  11.result=$?
  12.       
  13.if [ $result -eq 0 ]; then
  14.    echo "Address $ip valide"
  15.else
  16.    echo "Address $ip non valide !"
  17.fi
  18.}
  19.       
  20.#
  21.#Main
  22.#
  23.verifIp

VĂ©rification saisie date :

Exemple


$ ./regex2.sh 
Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : 10/10/1981
Format date 10/10/1981 valide
$ ./regex2.sh 
Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : 12.02.1970
Format date 12.02.1970 valide
$ ./regex2.sh 
Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : 17-05-1990
Format date 17-05-1990 valide
$ ./regex2.sh 
Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : 10/12-2000
Format date 10/12-2000 non valide !
$ ./regex2.sh 
Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : 02/08/19822
Format date 02/08/19822 non valide !
   1.#! /bin/sh
   2.       
   3.function verifdat(){
   4.       
   5.local dat=""
   6.local result=""
   7.      
   8.echo -n "Enter date (ex: format ??-??-???? ou ??.??.???? ou ??/??/????) : "
   9.read dat
  10.       
  11.echo "$dat" | grep -x "\([0-9]\{1,2\}\(\/\|\-\|\.\)\)\{2\}[0-9]\{4\}" > /dev/null 2>&1
  12.result=$?
  13.       
  14.if [ $result -eq 0 ]; then
  15.    echo "Format date $dat valide"
  16.else
  17.     echo "Format date $dat non valide !"
  18.fi
  19.}
  20.       
  21.#
  22.#Main
  23.#
  24.verifdat