首页 > 其他 > 详细

字符串切片

时间:2020-09-18 09:03:49      阅读:42      评论:0      收藏:0      [点我收藏+]
${#var}:返回字符串变量var的长度

${var:offset}:返回字符串变量var中从第offset个字符后(不包括第 offset个字符)的字符开始,到最后的部分,offset的取值在0到${#var}-1之间

${var:offset:number}:返回字符串变量var中从第offset个字符后(不包括第offset个字符)的字符开始,长度为number的部分

${var:-length}:取字符串的最右侧几个字符
注意冒号后必须有个空格

${var: offset: -length}: 从最左侧跳过offset字符,一直向右取到距离最右侧length个字符之前的内容

${var: -length: -offset}: 先从最右侧向左取到length个字符开始,再向右取到距离最右侧offset个字符之间的内容

                  注意:-length前空格

基于模式取字串

        ${var#*word}:其中word可以是指定的任意字符

                功能:自左而右,查找var变量所存储的字符串中,第一次出现的word,删除字符串开头至第一次出现word字符串(含)之间的所有字串

                ${var##*word}:同上,   含贪婪模式,不同的是,删除的是字符串开头至最后一次由word指定的字符串之间的所有内容

                eg:

                 file="var/log/messages"

                         ${file#*/}:log/messages

                         ${file##*/}:messages

${var%word*}:其中word可以是指定的任意字符

                功能:自右而左,查找var变量所存储的字符串中,第一次出现的word,删除字符串开头至第一次出现word字符串(含)之间的所有字串

                ${var%%word*}:同上,   含贪婪模式,不同的是,删除的是字符串开头至最后一次由word指定的字符串之间的所有内容

                查找替换:

                       ${var/pattern/substr}:查找var所表示的字符串中,第一次被pattern所匹配的字符串,以substr替换之

                             ${var//pattern/substr}查找var所表示的字符串中,所有能被pattern所匹配的字符串,以substr替换之

                             ${var/#pattern/substr}:查找var所表示的字符串中,行首被pattern所匹配的字符串,以substr替换之

                             ${var/%pattern/substr}查找var所表示的字符串中,行尾被pattern所匹配的字符串,以substr替换之

字符串切片

原文:https://blog.51cto.com/14907072/2534383

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!