赞
踩
oolean endsWith(String suffix)
测试此字符串是否以指定的后缀结束。
格式:[[ $STR == *$SUFFIX ]]
[root@web ~]# STR=hello.gif
[root@web ~]# SUFFIX=.gif
[root@web ~]# [[ $STR == *$SUFFIX ]] && echo "ends"
ends
[root@web ~]#
格式:[[ $STR =~ $SUFFIX$ ]]
在正则表达式中,$匹配结尾。
[root@web ~]# STR=hello.gif
[root@web ~]# SUFFIX=.gif
[root@web ~]# [[ $STR =~ $SUFFIX$ ]] && echo "ends"
ends
[root@web ~]#
例外:在上面的例子中,SUFFIX中包含点(.),而点(.)在正则表达式中能够匹配任意字符,如下所示:
[root@web ~]# STR=helloxgif
[root@web ~]# SUFFIX=.gif
[root@web ~]# [[ $STR =~ $SUFFIX$ ]] && echo "ends"
ends
[root@web ~]#
正确:case "$STR" in *"$SUFFIX") echo "ends"; esac
错误:case "$STR" in "*$SUFFIX") echo "ends"; esac
注意*不能写在双引号里面,否则不灵。
[root@web ~]# STR=hello.gif
[root@web ~]# SUFFIX=.gif
[root@web ~]# case "$STR" in *"$SUFFIX") echo "ends"; esac
ends
[root@web ~]# case "$STR" in "*$SUFFIX") echo "ends"; esac
[root@web ~]#
格式:[ "${STR%$SUFFIX}" != "$STR" ]
[root@web ~]# STR=hello.gif
[root@web ~]# SUFFIX=.gif
[root@web ~]# [ "${STR%$SUFFIX}" != "$STR" ] && echo "ends"
ends
[root@web ~]#
本文链接:http://codingstandards.iteye.com/blog/1187353 (转载请注明出处)
返回目录:Java程序员的Bash实用指南系列之字符串处理(目录)
上节内容:Bash字符串处理(与Java对照) - 16.判断是否以另外的字符串开头
下节内容:Bash字符串处理(与Java对照) - 18.格式化字符串
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。