isnum.bash

来自「android-w.song.android.widget」· BASH 代码 · 共 53 行

BASH
53
字号
#From: jrmartin@rainey.blueneptune.com (James R. Martin)#Newsgroups: comp.unix.shell#Subject: Re: testing user input on numeric or character value#Date: 26 Nov 1997 01:28:43 GMT# isnum returns True if its argument is a valid number,# and False (retval=1) if it is any other string.# The first pattern requires a digit before the decimal# point, and the second after the decimal point.# BASH NOTE: make sure you have executed `shopt -s extglob' before# trying to use this function, or it will not workisnum() # string{    case $1 in    ?([-+])+([0-9])?(.)*([0-9])?([Ee]?([-+])+([0-9])) )        return 0;;    ?([-+])*([0-9])?(.)+([0-9])?([Ee]?([-+])+([0-9])) )        return 0;;    *) return 1;;    esac}isnum2() # string{    case $1 in    ?([-+])+([[:digit:]])?(.)*([[:digit:]])?([Ee]?([-+])+([[:digit:]])) )        return 0;;    ?([-+])*([[:digit:]])?(.)+([[:digit:]])?([Ee]?([-+])+([[:digit:]])) )        return 0;;    *) return 1;;    esac}isint() # string{    case $1 in    ?([-+])+([0-9]) )        return 0;;    *) return 1;;    esac}isint2() # string{    case $1 in    ?([-+])+([[:digit:]]) )        return 0;;    *) return 1;;    esac}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?