##@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} -gt 0 ] || return 1 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 [ -z "${1//[0-9]/}" ] } 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} -gt 0 ] || return 1 v="${v//./}" v="${v//,/}" v="${v//[0-9]/}" [ -z "$v" ] }