FW: BASH字符串操作

(一)字符串的替换
(1)
${变量1/查找字符/替换字符}
(说明一下,这个操作中除了第一个参数是变量外其它两个都是字符;还有一点就是这个操作并不是把“变量1”中的字符替换了,详见例子)
例:
str1=abcABCabc123ABC
echo ${str1/bcA/aaa}#这里的abc和aaa都是字符串,而str1是变量,并且这个操作过后str1里的字符串长度不会减少,只是产生了一个新的字串。
(2)
${变量1/#查找字符/替换字符}
(说明一下,这个操作上和面的是一样的,只不过是从左边开始匹配,并且必须从左边第一个字符开始)
例:
echo ${str1/#bcA/aaa}#这个例子中并不会把bcA换成aaa因为b不是左边第一个开头字符
echo ${str1/#abc/aaa}#这样才行
(3)
${变量1/%查找字符/替换字符}
(与(2)相反,是结尾最后一个字符要匹配才行)
例:
echo ${str1/%3ABC/aaa}#abcABCabc12aaa
(3)
${变量1//查找字符/替换字符}
全部替换
(二)取子串
(1)${变量1:位置}
(说明一下,默认是从左边开始,如果“位置”为负数,则是从右边的第“位置”个字符开始,并且第一个位置为0;从“位置”开始取子串到最后)
例:
str1=abcABCabc123ABC
echo ${str1:(-3)}#会输出ABC
(2)
${变量1:开始位置:结束位置}
(3)如果“变量1”为“*”或“@”,“位置”所表示的是第几个参数。
(三)字符串移动
(1)${字串#匹配字串}
(说明一下,这个是从左边第一个开始匹配,剥去最短“匹配字串”)
例:
str1=abcABCabc123
echo ${str1#a*c}#输出ABCabc123
(2)${字串##匹配字串}
(说明一下,这个是从左边第一个开始匹配,剥去最长“匹配字串”)
str1=abcABCabc123
echo ${str1#a*c}#输出123
echo ${str1#b*c}#输出abcABCabc123,因为没有从第一个开始匹配
(3)$
{字串%匹配字串}
(4)${
字串%%匹配字串}
(说明一下,这与上面的(1)(2)是正好相反的,是从最后一个开始匹配的)
(四)字符串长度
${#字串}
例:
str=abcdefg
echo ${#str}#输出7
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值