⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isalpha.sh

📁 BASH Shell 编程 经典教程 《高级SHELL脚本编程》中文版
💻 SH
字号:
#!/bin/bash# isalpha.sh: 使用"case"结构来过滤字符串. SUCCESS=0FAILURE=-1isalpha ()  # 检查输入的 *第一个字符* 是不是字母表上的字符.{if [ -z "$1" ]                # 没有参数传进来?then  return $FAILUREficase "$1" in[a-zA-Z]*) return $SUCCESS;;  # 以一个字母开头?*        ) return $FAILURE;;esac}             # 同C语言的"isalpha ()"函数比较一下. isalpha2 ()   # 测试 *整个字符串* 是否都是字母表上的字符.{  [ $# -eq 1 ] || return $FAILURE  case $1 in  *[!a-zA-Z]*|"") return $FAILURE;;               *) return $SUCCESS;;  esac}isdigit ()    # 测试 *整个字符串* 是否都是数字.{             # 换句话说, 就是测试一下是否是整数变量.  [ $# -eq 1 ] || return $FAILURE  case $1 in  *[!0-9]*|"") return $FAILURE;;            *) return $SUCCESS;;  esac}check_var ()  # 测试isalpha().{if isalpha "$@"then  echo "\"$*\" begins with an alpha character."  if isalpha2 "$@"  then        # 不需要测试第一个字符是否是non-alpha.    echo "\"$*\" contains only alpha characters."  else    echo "\"$*\" contains at least one non-alpha character."  fi  else  echo "\"$*\" begins with a non-alpha character."              # 如果没有参数传递进来, 也是"non-alpha". fiecho}digit_check ()  # 测试isdigit().{if isdigit "$@"then  echo "\"$*\" contains only digits [0 - 9]."else  echo "\"$*\" has at least one non-digit character."fiecho}a=23skidoob=H3lloc=-What?d=What?e=`echo $b`   # 命令替换.f=AbcDefg=27234h=27a34i=27.34check_var $acheck_var $bcheck_var $ccheck_var $dcheck_var $echeck_var $fcheck_var     # 没有参数传递进来, 将会发生什么?#digit_check $gdigit_check $hdigit_check $iexit 0        # S.C改进了这个脚本.# 练习:# -----#  编写一个'isfloat ()'函数来测试浮点数.#  暗示: 这个函数基本上与'isdigit ()'相同,#+ 但是要添加一些小数点部分的处理.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -