字符串截取
Posted 畅优植物乳杆菌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串截取相关的知识,希望对你有一定的参考价值。
假设有变量
url=http://www.baidu.com/index.html
<1>#号截取----删除左边的字符,保留右边的字符
[[email protected] ~]# echo "${url#*//}" www.baidu.com/index.html
<2>##号截取----删除左边的字符,保留右边的字符
[[email protected] ~]# echo "${url##*/}" index.html
---->#号截取和##号截取的区别:
可以看到上面的变量值并不是只有1个单一的字符,如字母(w,i等等).#和##的区别就是在这里
[[email protected] ~]# url=http://www.baidu.com/index.html [[email protected] ~]# echo "${url#*i}" du.com/index.html [[email protected]-R3-srv ~]# echo "${url##*i}" ndex.html
"#"是从找到的第一个对象开始截取(从左往右数)
"##"是从找到的最后一个对象开始截取(从左往右数)
<3>%号截取----删除右边的字符,保留左边的字符
[[email protected] ~]# echo "${url%i*}" http://www.baidu.com/
<4>%%号截取----删除右边的字符,保留左边的字符
[[email protected] ~]# echo "${url%%i*}" http://www.ba
---->注意:
注意运算符"*"的位置
注意"%"也是从找到的第一个对象开始截取。但是顺序是从右向左查找的
注意"%%"也是从找到的最后一个对象开始截取。但是顺序是从右向左查找的
<5>从左边第几个字符开始,及字符的个数
[[email protected] ~]# echo "${url:0:2}" ht
---->0表示的是开始位置,逻辑相当于Python的列表索引
[[email protected] ~]# echo "${url:2}" tp://www.baidu.com/index.html
<6>
以上是关于字符串截取的主要内容,如果未能解决你的问题,请参考以下文章