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

shell中的字符串处理 .

2014-05-05 11:53 453 查看
一. 得到长度
$x="abcd"
#方法一
$expr length $x
4
# 方法二
$echo ${#x}
4
# 方法三
$expr "$x" : ".*"
4
# expr 的帮助
$STRING : REGEXP anchored pattern match of REGEXP in STRING
二.查找字串
$expr index $x "a"
1
$expr index $x "b"
2
三.得到子字符串
# 方法一
# expr <string> startpos length
$expr substr "$x" 1 3
abc
# 方法二
# ${x:pos:lenght}
$echo ${x:1}
bcd
$echo ${x:0:2}
ab
四.匹配正则表达式
# 打印匹配长度
$expr match $x "."
1
$expr match $x "abc"
3
$expr match $x "bc"
0
五. 字符串的掐头去尾
$x=aabbaarealwwvvww
$echo "${x%w*w}"
aabbaarealwwvv
$echo "${x%%w*w}"
aabbaareal
$echo "${x##a*a}"
lwwvvww
$echo "${x#a*a}"
bbaarealwwvvww
六.字符串的替换
$x=abcdabcd
$echo ${x/a/b} # 只替换一个
bbcdabcd
$echo ${x//a/b} # 替换所有
bbcdbbcd
不可以使用 regexp , 只能用 * ? 的文件扩展方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell