Linux中截取字符串

2019-12-03  本文已影响0人  tianzhanlan

第一种

${parameter%word}       #最小限度从后面截掉word
${parameter%%word}      #最大限度从后面截掉word
${parameter#word}       #最小限度从前面截掉word
${parameter##word}      #最大限度从前面截掉word

word可以是一个具体的字符串,也可以是一个模式字符串。
例子:

str='http://www.你的域名.com/cut-string.html'
echo ${str%/*}
#结果
http://www.你的域名.com 

echo ${str%%/*}
#结果
http:

echo ${str#*//}
#结果
www.你的域名.com/cut-string.html

echo ${str##*/}
#结果
cut-string.html

第二种:

${variable:n1:n2}        #截取变量variable从左边起索引n1开始的n2个字符。n1表示索引,索引从0开始;n2表示截取的字符个数。

变种如下:

#截取变量variable从左边起索引n1开始的所有字符。
${variable:n1} 
#截取变量variable从右边起第n1个字符开始的n2个字符。
${variable:0-n1:n2}
#截取变量variable从右边起第n1个字符开始的所有字符。
${variable:0-n1:n2}

例子:

variable='http://www.你的域名.com/cut-string.html'
echo ${variable:0:4}
#结果
http

echo ${variable:7}
#结果
www.你的域名.com/cut-string.html

echo ${variable:0-15:10}
#结果
cut-string

echo ${variable:0-15}
#结果
cut-string.html

第三种:

借助其他shell命令,如cut

cut命令的选项主要有以下几个,索引从1开始:

echo $variable | cut -c 1-4
#结果
http

echo $variable | cut -c 8-
#结果
www.你的域名.com/cut-string.html

echo $variable | cut -d":" -f1
#结果
http
上一篇 下一篇

猜你喜欢

热点阅读