grep过滤数字的正则表达式,拿来即用!

工作中写的一个脚本需要接收用户从命令行传过来的参数,这个参数要求是小数,所以有必要对用户输入的参数进行校验,如果不合法,提示用户重新输入合法的数值。
支持带+号和带-号的输入,只能是十进制数字

echo 90.33 | egrep '^[+-]?(0|[1-9]*)\.?[0-9]+'
echo 1000 | egrep '^[+-]?(0|[1-9]*)\.?[0-9]+'
echo -99.99 | egrep '^[+-]?(0|[1-9]*)\.?[0-9]+'
echo +90.33 | egrep '^[+-]?(0|[1-9]*)\.?[0-9]+'

猜你喜欢

转载自blog.51cto.com/13560219/2455691