bash shell的expr注意事项01

关于expr substr方面,expr的索引与一般的编程语言有所不同,如果之前没遇到过类似的情况,一定会踩坑,做个笔记胜过好记性。

举个栗子,看以下的代码:

expr substr "123456789" 3 4

输出的结果为:
在这里插入图片描述
起先一开始认为后面的索引值应该是第4个数字到第5个数字之前(如果以0做开始索引的话),但是后面发现根本不是这样,上面案例的expr的索引应该是:
从1做开始索引,第3个数字开始计数,所以是从3开始计算,结尾的索引又是从“3”这个索引重新计算,即:原来的索引值“3”变成了索引值“1”,因此结尾的索引“4”,其实索引了:“3,4,5,6” 这四个索引值。
故:

expr substr "123456789" 3 4
#输出结果为:3456

同样的,再举个栗子 :

expr substr "abed34545le_2%%" 2 5
#输出结果为:bed34
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值