shell中怎麼判斷輸入的是否是數字

2025-07-25 18:05:15 字數 2725 閱讀 7913

j**a怎樣判斷輸入是否為數字

1樓:育知同創教育

可以用正規表示式,還可以直接進行轉換,例如,如果轉換失敗則不是數字,定義乙個字串"0123456789",然後把目標字串的每個字元取出來,如果他有乙個indexof("0123456789")<0的話,則表示不是。當然這是針對正整數的情況,浮點數,負數稍微改一下。

下面是例項**:

public class chartestpublic static void main(string args) }

2樓:網友

正則是一種,還可以直接進行轉換,例如,如果轉換失敗則不是數字,還可以定義乙個字串"0123456789",然後把目標字串的每個字元取出來,如果他有乙個indexof("0123456789")<0的話,則表示不是。當然這是針對正整數的情況,浮點數,負數稍微改一下。

linux if判斷是不是數字

3樓:丶小瀟瀟

## 方法1

a=1234;echo "$a"|[ n "`sed -n '/^[0-9][0-9]*$/p'`" ] echo string a is numbers

第乙個-n是shell的測試標誌,對後面的串"`sed -n '/^[0-9][0-9]*$/p'`" 進行測試,如果非空,則結果為真。

sed預設會顯示所有輸入行資訊的,sed 的「-n」選項是讓sed不要顯示,而只顯示我們所需要的內容:即後面的表示式所匹配的行,這是通過表示式中加入「p」命令來實現的。

[0-9][0-9]*$/他的含義是匹配至少由一位數字構成的行。

## 方法2, 可以,不過不是bash實現的,是使用了grep的正則。

#if grep '^[[digit:]]' <<"$1";then

# echo "$1 is number."

#else# echo 'no.'

#fi## 方法3

#if [ "$1" -gt 0 ] 2>/dev/null ;then

# echo "$1 is number."

#else# echo 'no.'

#fi## 方法4,case

#case "$1" in

## echo "$1 is number."##

##esac

## 方法5,awk

#echo $1| awk ''

## 方法5,awk

#if [ n "$(echo $1| sed -n "/^[0-9]\+/p")" ];then

# echo "$1 is number."

#else# echo 'no.'

#fi## 方法6,expr

expr $1 "+" 10 &>/dev/null

if [ eq 0 ];then

echo "$1 is number"

elseecho "$1 not number"fi

4樓:網友

我也不曉得,也想知道下。。。

shell裡判定輸入的是否為數字怎麼寫

5樓:寶寶心裡很苦啊

我執行乙個命令(用cat file代替), 它就會要求我輸入密碼,密碼是0-100中其中乙個數字注意:這個命令的結果密碼輸入正確,將會建立乙個檔案 test,如果密碼錯誤,將不會建立shell實現以下功能 1.嘗試這100個密碼,直到破解出該密碼,(輸入密。

用shell判斷乙個字串是不是全為數字

6樓:匿名使用者

在不做運算的時候是不區分變數的型別的,比如a=123,既可以看成是數字,也可以看成是字串。

怎麼用shell指令碼語言,判斷輸入的字串是否包含字母或者數字

7樓:網友

read -p "請輸入乙個字串" strthenecho "yes"

elseecho "no"fi

shell指令碼 判斷read的字串是不是純數字

8樓:網友

如果你是bash 或以上,可以這樣寫:

if [["$c" =~ "^[0-9]+$" ]]thenecho "number"

elseecho "not a number!"fi

linux shell 怎樣判斷輸入是否是數字啊?(包含浮點數)

9樓:網友

樓主要是正則還好的話,應該試著用正規表示式描述吧。

數字的定義應該是:

乙個可選的正負號,跟乙個以上的數字,再是可選的小數點再加一串可選的一串數字(包括:3, -5, ,1. )

或可選的正負號,跟乙個點再跟乙個以上的數字(.2, 。可能看著比較奇怪,但傳統上(c語言裡)認為是數字。如果你的要求不一樣,可以更改定義)

你可以試試把這個描述翻譯成正規表示式,這是寫指令碼的基本功。另外你還可以試試讓你的程式識別 這樣的浮點數。

判斷的時候,比如可以用 sed 把匹配這個表示式的部分刪掉。如果剩下的是空串,則說明輸入就是數字。否則不是。

10樓:xu水冰淼

我也不曉得,也想知道下。。。

11樓:於平卉

shell它就不支援浮點數。

shell中a b兩個變數都為數字,判斷a的值是否大於b

shell裡不支援浮點運算,你可以讓a 乘以 2 對 b做整除 看返回值是否大於3 echo a 2 b bc gt 3 echo a b 1.5 echo a b 1.5 判斷 a b 3 2,即判斷 2a 3b,這樣就避開浮點運算了。let a 2 let b 3 if a gt b thene...

怎麼判斷自己是否喜歡人怎麼判斷自己是否喜歡一個人?

一 瞭解他來。當你喜歡一個人自的時候,對方bai的喜好即便你沒有主動調查du,但某種直覺會zhi讓引dao導你認出與對方有關的氣息。二 你喜歡一個人,你生活的圈子百分之八十的資訊都和他有關。三 你對他的觸碰沒有厭惡和牴觸。四 每個人都有自己的私人領域,當你的私人領域對他開放時,足以說明他的與眾不同。...

求大神輸入正整數n判斷n是否是素數

include include using namespace std int main else if i k i一直加到等於k 還沒有發現整除的數 則判斷為素數!i 1 return 0 include include include using namespace std int main i...