工作中寫的一個腳本需要接收用戶從命令行傳過來的參數,這個參數要求是小數,所以有必要對用戶輸入的參數進行校驗,如果不合法,提示用戶重新輸入合法的數值。
支持帶+號和帶-號的輸入,只能是十進制數字
echo 90.33 | egrep '^[+-]?([0-9]*)\.?[0-9]+'
echo 1000 | egrep '^[+-]?([0-9]*)\.?[0-9]+'
echo -99.99 | egrep '^[+-]?([0-9]*)\.?[0-9]+'
echo +90.33 | egrep '^[+-]?([0-9]*)\.?[0-9]+'