expr的字符串操作 表达式: length, index, match, substr等

参考: http://www.linuxidc.com/Linux/2012-04/58095.htm

expr的格式, 主要有两个,

一是 用expr option, 选项;
821299-20170531113159008-1274804850.png

二是, expr的几个主要主要表达式: length, 查找index, 截取子串: substr, 冒号。
821299-20170531113207368-1340554929.png

求字符串的长度, 可以使用 ${#string}expr length "$string"
821299-20170531160611993-1807565569.png

求字符串中的字串索引, 即字串查找:使用命令index
821299-20170531161137836-938174237.png
注意, 使用 expr的index substr 和match等 表达式时, 字符索引是从1 开始的, 而 expr ${$str:0:4} 等则是从0开始索引的
821299-20170531162125508-533485293.png

关于expr match表达式

  1. 返回的是 匹配到的字串的长度, 不是该字符串本身
  2. 要想匹配成功字串, 这个字串必须是从头开始的, 子串从字符串首部开始才会匹配成功.
  3. 如果不使用match要想匹配字串, 必须加冒号, 注意这个冒号是放在 字符串的外面的.
    821299-20170531162856289-1514185509.png
  4. 如果冒号放在字符串的里面, 则是对字符串进行字串 截取: echo ${str:position} 或 echo ${str:position:length}
    注意用冒号来进行字符串截取的, 不再是expr的表达式, 所以不能使用expr, 而是直接用echo命令就好了.
    821299-20170531163605321-909707806.png

双引号不会影响 即使是数学运算表达式中的 数学运算.

821299-20170531160448852-432259789.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值