Linux 字符串切片的几种方式

假设变量 var=“https://www.163.com/index.html”

一、'#' 截取,保留右边字符,删除左边字符

1 echo ${var#*//}

var : 变量名;

# : 运算符,匹配左边第一个匹配的字符或字符串;

#*// : ‘*’ 在左边表示从左边开始删除第一个 ‘//’ 及左边所有的字符,* 在右侧是无效的;

显示结果:www.163.com/index.html

 

二、‘##’ 截取, 保留右边字符,删除左边字符

1 echo ${var##*/}

## : 运算符, 匹配到左边最后一个(右边第一个)匹配的字符或字符串;

##*/: 从左边开始删除最后边的‘/'及左边所有的字符;

显示结果:index.html

 

三、'%'截取, 保留左边字符,删除右边字符

1 echo ${var%/*}

 

% : 运算符, 匹配右边第一个匹配的字符或字符串;

%/* : 删除右边第一个’/‘ 及右边所有字符;

显示结果: https://www.163.com

 

四、'%%'截取, 保留左边字符,删除右边字符

echo ${var%%/*}

% : 运算符, 匹配右边最后一个(左边第一个)匹配的字符或字符串;

%%/* : 删除右边最后一个’/‘ 及右边所有字符;

显示结果: https:

 

五、':' 截取

# 从开头第9个字符开始到结尾,结果:www.163.com/index.html
echo ${var:8}

# 从开头匹配取5个字符,结果: https
echo ${var:0:5}

# 从右边第4个字符开始到结尾, 结果: html
echo ${var:0-4}

# 从右边第10个字符开始取5个字符, 结果: index
echo ${var:0-10:5}

 

 

 

 

 

 

 

posted @ 2019-03-28 11:08  ToFgetU  阅读(2017)  评论(0编辑  收藏  举报