zoukankan      html  css  js  c++  java
  • shell 字符串操作

    1.从开头(#)或结尾(%)打印不匹配的内容

    str=abc12342341

    echo ${str#a*c}     #表示把以字符a开头到c结束最短匹配这部分忽略掉打印:12342341

    echo ${str##a*c}   ##表示把以字符a开头到c结束最长匹配这部分忽略掉打印: 12342341

    echo ${str##b*c}  --从开头没有匹配到全部打印:abc12342341

    echo ${str%3*1}  %结尾最短匹配

    2.匹配并替换

      echo ${str/23/bb}  --将包含的23字符替换为bb打印(匹配一次): abc1bb42341

      echo ${str//23/bb}  --将包含的23字符替换为bb打印(全部替换): abc1bb42341

      echo ${str/#23/xx} --将开头的23字符替换为xx打印(匹配一次): abc12342341

      echo ${str/%23/xx} --将结尾的23字符替换为xx打印(匹配一次): abc12342341

    3. expr 显示匹配内容

         string=abc12342341

           expr match $string '([a-c]*[0-9]*)'  //abc12342341    从开头匹配等同expr $string : '([a-c]*[0-9]*)'

           expr $string : '([a-c]*[0-9])'       //abc1    

           expr $string : '.*([0-9][0-9][0-9])' //341 显示括号中匹配的内容  

           expr $string : 'a(.*)1'    //最长匹配a到1之间的字符:bc1234234

    https://www.cnblogs.com/gaochsh/p/6901809.html

  • 相关阅读:
    Oracle 列转行函数 Listagg()
    JS正则表达式
    云经验
    业务架构、应用架构、数据架构和技术架构
    Sublime Text3+Golang搭建开发环境
    成功安装vscode中go的相关插件
    Visual Studio Code配置GoLang开发环境
    团队架构实践
    架构
    条件引用
  • 原文地址:https://www.cnblogs.com/i-shu/p/11653651.html
Copyright © 2011-2022 走看看