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
如果不加字符个数就截取剩下的所有字符