怎么用shell 判断一个字符串只由字母组成?

2025-10-24 07:10:40

1、判断一个字符串是否只有字母组成,可以借助于grep命令,结合正则表达式来进行判断,字符有[A-Z]这26个字符组成,只要发现不属于这26个字符的字符,即表示不是纯字母的字符串。编写如下代码:

while ((1));do   

read -p "input string:" var;   

if [[ $var == q || $var == Q ]];then       

exit;   

fi   

echo "$var" | grep [^a-z] >/dev/null && echo "$var: not character" || echo "$var: character"

done

怎么用shell 判断一个字符串只由字母组成?

2、如上图所示的运行结果,GOOD做为输入,就判断错了,原因是没有考虑大写字母的问题。所以修改代码如下:

while ((1));do   

read -p "input string:" var;   

if [[ $var == q || $var == Q ]];then       

exit;   

fi   

echo "$var" | grep [^a-z\|A-Z] >/dev/null && echo "$var: not character" || echo "$var: character"

done

怎么用shell 判断一个字符串只由字母组成?

1、除了使用grep等正则表达式命令外,也可以直接使用bash的条件判断,在bash shell的[[]]运算中支持使用正则表达式。编写代码如下:

while ((1));do   

read -p "input string:" var;   

if [[ $var == q || $var == Q ]];then       

exit; 

fi    if [[ $var =~ ^[a-z\|A-Z]+$ ]];then

    echo "$var: character"

else

    echo "$var: not character"

fi

done

怎么用shell 判断一个字符串只由字母组成?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢