字符串操作

1.字符串长度: 

${#string}

expr length $string

expr "$string":'.*'

这三种方法都可以。

2.从字符串开始的位置匹配字串的长度

expr match "$string" '$substring' 

expr "$string" : '$substring'

$substring 是一个正则表达式

3.匹配到子串的第一个字符的位置

expr index $string $substring

4.提取子串

${string:position}

${string:position:length} 从string中位置为$position开始提取长度为length的子串

 expr substr $string $position $length  从string中位置为$position开始提取长度为length的子串

expr match "$string" '\($substring\)' 

expr "$string" : '\($substring\)' 

从$string的开始位置提取$substring ,$substring 是一个正则表达式

5.子串削除

${string#substring} 从字符串的左边截掉第一个匹配的substring

${string##substring} 从字符串的左边截掉z最后一个匹配的substring

${string%substring}  从字符串的右边截掉第一个匹配的substring

${string%%substring}  从字符串的右边截掉最后一个匹配的substring

6.子串替换

${string/substring/replacement}使用replacement替换第一个匹配的substring

${string//substring/replacement}使用replacement替换所有匹配的substring

${string/#substring/replacement}如果substring匹配string的开头,那么就用replacement来替换

${string/%substring/replacement}如果substring匹配string的结尾,那么就用replacement来替换

原文地址:https://www.cnblogs.com/neverleave/p/2950175.html