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

📄 isalpha.sh

📁 Shall高级编程
💻 SH
字号:
#!/bin/bash# isalpha.sh: Using a "case" structure to filter a string.SUCCESS=0FAILURE=-1isalpha ()  # Tests whether *first character* of input string is alphabetic.{if [ -z "$1" ]                # No argument passed?then  return $FAILUREficase "$1" in  [a-zA-Z]*) return $SUCCESS;;  # Begins with a letter?  *        ) return $FAILURE;;esac}             # Compare this with "isalpha ()" function in C.isalpha2 ()   # Tests whether *entire string* is alphabetic.{  [ $# -eq 1 ] || return $FAILURE  case $1 in  *[!a-zA-Z]*|"") return $FAILURE;;               *) return $SUCCESS;;  esac}isdigit ()    # Tests whether *entire string* is numerical.{             # In other words, tests for integer variable.  [ $# -eq 1 ] || return $FAILURE  case $1 in    *[!0-9]*|"") return $FAILURE;;              *) return $SUCCESS;;  esac}check_var ()  # Front-end to isalpha ().{if isalpha "$@"then  echo "\"$*\" begins with an alpha character."  if isalpha2 "$@"  then        # No point in testing if first char is 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."              # Also "non-alpha" if no argument passed.fiecho}digit_check ()  # Front-end to 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`   # Command substitution.f=AbcDefg=27234h=27a34i=27.34check_var $acheck_var $bcheck_var $ccheck_var $dcheck_var $echeck_var $fcheck_var     # No argument passed, so what happens?#digit_check $gdigit_check $hdigit_check $iexit 0        # Script improved by S.C.# Exercise:# --------#  Write an 'isfloat ()' function that tests for floating point numbers.#  Hint: The function duplicates 'isdigit ()',#+ but adds a test for a mandatory decimal point.

⌨️ 快捷键说明

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