Linux中字符串截取
测试字符串:var=1234567890abcedef1203
-
使用#截取0以后的内容
echo ${var#*0}结果:abcedef1203
#表示操作符,*0表示从左往右找到第一个0,截取0之后的所有字符echo ${var##*0}结果:3
#表示操作符,*0表示从右往左找到第一个0,截取0之后的所有字符 -
使用%截取
echo ${var%0*}结果:1234567890abcedef12
%表示操作符,0*表示从右往左找到第一个0,截取0之前的所有字符echo ${var%%0*}结果:123456789
%表示操作符,0*表示从左往右找到第一个0,截取0之前的所有字符 -
根据索引来截取
echo ${var:0:7}结果:1234567
其中的
0表示左边第一个字符开始,7表示字符的总个数。echo ${var:7:5}结果:890ab
其中的
7表示左往右第七个字符开始,5表示字符的个数。echo ${var:0-7:5}结果:def12
其中的
0-7表示右往左第七个字符开始,5表示字符的个数。echo ${var:0-7}结果:def1203
如果不加字符个数就截取剩下的所有字符