首页 > 系统服务 > 详细

Linux字符串的处理

时间:2017-02-15 22:37:19      阅读:159      评论:0      收藏:0      [点我收藏+]

字符串处理工具

  先设立var变量值为/etc/sysconfig/message

  ]#var=/etc/sysconfig/message

  ]#echo $var

  /etc/sysconfig/message

    1、字符串切片


    ${var:offset:number} 取var变量中的字符串中的字符,offset自左往右第几个字符开始默认0为第一个,number为要取的个数。

     ${var:5:9} 左边第5个字符开始,取9个字符,结果为sysconfig。

     ${var: -lengh}取字符串最右的lengh个字符

     ${var: -7} 取字串最右边的7个字符,结果为message。


     2、基于模式取子串


    ${var#*word} 自左往右,删除字符开头至第一次出现word(包括word)之间的所有字符。

     ${var#*s} /etc/sysconfig/message,自左往右,删除从开头至第一个s出现(包括s)之间的所有数据。

结果就成了ysconfig/message

     ${var##*word} 自左往右,删除字符开头至最后一次出现word(包括word)之间的所有字符

     ${var##*s} /etc/sysconfig/message,自左往右,删除从开头至第一个s出现(包括s)之间的所有数据。

结果就成了age

     ${var%word*} 自右往左,删除字符开头至第一次出现word之间的所有字符。

    ${var%%s*} /etc/sysconfig/message,自右往左,删除从开头至第一个s出现(包括s)之间的所有数据。结果就成了/etc/sysconfig/mes

    ${var%%word*} 自右往左,删除字符开头至最后一次出现word之间的所有字符。

     ${var%%s*} /etc/sysconfig/message,自右往左,删除从开头至第一个s出现(包括s)之间的所有数据。结果就成了/etc/


     3、查找替换


     ${var/pattern/substi}  查找var所表示的字符串中第一次能被pattern所匹配的字符串,用substi替换

    ${var//pattern/substi}  查找var所表示的字符串中所有能被pattern所匹配的字符串,用substi替换

     

     ${var/#pattern/substi} 查找var所表示的字符串中首行能被pattern所匹配的字符串,用substi替换

     ${var/%pattern/substi} 查找var所表示的字符串中尾行能被pattern所匹配的字符串,用substi替换

     

     4查找并删除

    

    ${var/parttern} 删除var所表示的字符串中,第一次能被parttern所匹配的字符串。

     ${var/parttern} 删除var所表示的字符串中,删除所有能被parttern所匹配的字符串。

     ${var/#parttern} 删除var所表示的字符串中,首行能被parttern所匹配的字符串。

     ${var/%parttern} 删除var所表示的字符串中,尾行能被parttern所匹配的字符串。


     5、字符大小写转换

    

     ${var^^}  把var中所有小写字符转换成大写字符。

     ${var,,}  把var中所有大写字符转换成小写字符。

     

     6、变量赋值

     

     ${var:-value} 如果var变量设置为空或未设置,则返回value的值,否则返回var变量的值

     ${var:+value} 如果var变量设置不为空,则返回value的值

     ${var:=value} 如果var变量为空,则设置var变量的值为value,否则返回var变量的值

     ${var:?error_info} 如果var变量为空,则报错误信息error_info,否则返回var变量的值 

     

    

     

     


Linux字符串的处理

原文:http://knowledgeq.blog.51cto.com/9549168/1898200

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!