#!/bin/bash## 方法1
a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers
的測試標誌,對後面的串"`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
# [1-9][0-9]*)
# 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"
else
echo "$1 not number"
fi
shell 判斷字串是否為數字
bin bash 方法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...
Shell判斷字串是否為數字
方法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不要顯...
C 基礎 判斷字串是否為空 判斷字元是否為數字
一 判斷字串是否為空 string.empty和string 是一樣的,同樣都是需要占用記憶體空間 空字串 但優先推薦使用string.empty console.writeline equals string.empty 結果 true 還一種高效判斷方法 s.length 0 來判斷字串是否為空...