參考: http://www.linuxidc.com/Linux/2012-04/58095.htm
expr的格式, 主要有兩個,
一是 用expr option, 選項;
二是, expr的幾個主要主要表達式: length, 查找index, 截取子串: substr, 冒號。
求字符串的長度, 可以使用 ${#string}
或 expr length "$string"
求字符串中的字串索引, 即字串查找:使用命令index
注意, 使用 expr的index substr 和match等 表達式時, 字符索引是從1 開始的, 而 expr ${$str:0:4} 等則是從0開始索引的
關於expr match表達式
- 返回的是 匹配到的字串的長度, 不是該字符串本身
- 要想匹配成功字串, 這個字串必須是從頭開始的, 子串從字符串首部開始才會匹配成功.
- 如果不使用match要想匹配字串, 必須加冒號, 注意這個冒號是放在 字符串的外面的.
- 如果冒號放在字符串的里面, 則是對字符串進行字串 截取:
echo ${str:position} 或 echo ${str:position:length}
注意用冒號來進行字符串截取的, 不再是expr的表達式, 所以不能使用expr, 而是直接用echo命令就好了.