【shell进阶】字符串操作


字符串操作:
1.获取字符串的长度
${#stringname}
expr length $string
expr "$string" : '.*' #这个没看明白
2.子串索引位置
expr index $string $substring
3.子串提取的方法
${string:position}
#在$string中从位置$position开始提取子串.
#如果$string是"*"或者"@", 那么将会提取从位置$position开始的位置参数.
${string:position:length}
#在$string中从位置$position开始提取$length长度的子串.
${string:-n} #提取的是整个string
${string:(-n)}
${string: -n} #使用括号或者空格转义之后,表示从右往左提取子串
expr substr $string $position $length #同${string:postion:length}是一样的
expr match "$string" '\($substring\)' #$substring是正则表达式
expr "$string":'\($substring\)'#从$string开始的位置提取子串
expr match "$string" '.*\($substring\)'#这个是从结尾提取
expr "$string":'.*\($substring\)'#同上
4.子串截取
${string#substring}#从$string的开头位置截掉最短匹配的$substring.
${sring##substring}#从$string的开头位置截掉最长匹配的$substring. 可以是正则表达式。
${string%substring}#从$string的结尾位置截掉最短匹配的$substring.
${string%%substring}从$string的结尾位置截掉最长匹配的$substring.

原文地址:https://www.cnblogs.com/vman/p/2563928.html