shell实现对输入的字符进行判断,是字母,数字,还是其他字符,如果输入的是数字对其进行判断大小

此处判断输入的字符类型用到了正则,流程主要如下:

1.读取控制台输入的字符;

2.对输入的字符进行判断,是数字,字符串,还是其他字符;

3.如果是数字,判断输入的数字与给定数字的大小关系;

4.如果非数字,则控制台给与提示。

脚本如下:

#!/bin/bash
read -p "请输入一个数字:" num
# 实现判断输入的字符是数字还是字母或者是其他符号
function isNum(){
if [[ $1 =~ ^[a-zA-Z]+$ ]] # 正则匹配多个输入的字符
then
  echo "$1 是纯字母"
  return 1
elif [[ $1 =~ ^[0-9]+$ ]] # 匹配多个数字
then
  echo "$1是纯数字"
  return 0
else
  echo "$1是其他字符"
  return 1
fi
}
# 调用函数
isNum $num
#判断函数的返回结果
if [ $? == 0 ]
then
  if [ $num -gt 10 ]
  then 
   echo "$num 大于10"
  elif [ $num -eq 10 ]
  then  
   echo "$num 等于10"
  else
   echo "$num 小于10"
  fi
else
 echo "输入内容不符合要求"
fi
echo "结束!"

测试结果如下:

1.输入字符串

请输入一个数字:werwe
werwe 是字母
输入内容不符合要求
结束!

2.输入数字

请输入一个数字:234234
234234是数字
234234 大于10
结束!

3.输入其他字符

请输入一个数字:!@#$
!@#$是其他字符
输入内容不符合要求
结束!

 

  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值