您的位置:首页 > 运维架构 > Shell

shell 字符串操作

2013-06-08 19:54 281 查看
string="abcABC123ABCabc"
字符串长度:

echo ${#string}
#15

echo `expr length $string`
#15

索引

用法:expr index $string $substring

expr index $string "ABC"
#4

提取子串

用法:${string:position}

echo ${string:3}
#ABC123ABCabc

提取指定长度子串

用法:${string:position:length}

echo ${string:3:3}
#ABC

从末尾提取子串

用法:

${string: -length}注意有空格

${string:(-length)}

echo ${string:(-3)}
#abc

子串剔除

从左边开始截吊第一个匹配的$substring

用法:${string#*substring}

echo ${string#*abc}
#ABC123ABCabc

substr="abc";echo ${string#*$substr}
##ABC123ABCabc

从左边开始截吊最后一个匹配的$substring

echo ${string##*abc}
#

从右边开始截吊第一个匹配的$substring

用法:${string%substring*}

echo ${string%abc*}
#abcABC123ABC

从右边开始截吊最后一个匹配的$substring

echo ${string%%abc*}
#

子串替换

用$replacement来替换第一个匹配的$substring

用法:${string/substring/replacement}

echo ${string/ABC/XYZ}
#abcXYZ123ABCabc

用$replacement来替换全部匹配的$substring

用法:${string//substring/replacement}

echo ${string//ABC/XYZ}
#abcXYZ123XYZabc

如果$substring匹配$string的开头部分,那么就用$replacement来替换

用法:${string/#substring/replacement}

echo ${string/#abc/xyz}
#xyzABC123ABCabc

如果$substring匹配$string的结尾部分,那么就用$replacement来替换

用法:${string/%substring/replacement}

echo ${string/%abc/xyz}
#abcABC123ABCxyz
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: