##@cooked comments # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 ## Fonctions de base: gestion des valeurs numériques ##@cooked nocomments uprovide base.num function isnum() { # retourner vrai si $1 est une valeur numérique entière (positive ou négative) [ ${#1} -gt 0 ] || return 1 local v="$1" v="${v#-}" v="${v//[0-9]/}" [ -z "$v" ] } function ispnum() { # retourner vrai si $1 est une valeur numérique entière positive [ ${#1} -gt 0 ] || return 1 local v="$1" v="${v//[0-9]/}" [ -z "$v" ] } function isrnum() { # retourner vrai si $1 est une valeur numérique réelle (positive ou négative) # le séparateur décimal peut être . ou , [ ${#1} -gt 0 ] || return 1 local v="$1" v="${v#-}" v="${v//./}" v="${v//,/}" v="${v//[0-9]/}" [ -z "$v" ] }