美文网首页linux学习
Linux字符串操作之截取、替换

Linux字符串操作之截取、替换

作者: 小贝学生信 | 来源:发表于2021-05-05 19:39 被阅读0次
    test="https://www.jianshu.com"
    #打印字符串内容
    echo ${test}
    #https://www.jianshu.com
    
    #打印字符串长度
    echo ${#test}
    #23
    

    1、截取操作

    方法(1):指定截取字符串的起始位置与长度

    对于字符串的起始位置定义:如果是从左到右,则第一个字符位置为0;
    如果是从右到左,则第一个字符位置为1。

    • 如下:从第8个字符串开始,截取长度为10的子字符串
    echo ${test:8:10}
    #www.jiansh
    
    • 如下:从第8个字符串开始,截取后面的所有字符串内容
    echo ${test:8}
    #www.jianshu.com
    
    • 如下:从倒数第11个字符串开始,截取后面的所有字符串内容
    echo ${test:0-11}
    #jianshu.com
    

    方法(2):指定分隔符进行截取

    • 注意*号的位置~
    • 如下:取字符串中第一次出现.点号的右边全部内容
    echo ${test#*.}
    #https://www.jianshu.com
    
    • 如下:取字符串中最后一次出现.点号的右边全部内容
    echo ${test##*.}
    #com
    
    • 如下:取字符串中最后一次出现.点号的左边全部内容
    echo ${test%.*}
    #https://www.jianshu
    
    • 如下:取字符串中第一次出现.点号的左边全部内容
    echo ${test%%.*}
    #https://www
    

    2、替换操作

    • 将字符串里的第一个点号.替换为短横-
    echo ${test/./-}
    #https://www-jianshu.com
    
    • 将字符串里的全部点号.替换为短横-
    echo ${test//./-}
    #https://www-jianshu-com
    
    • 可配合正则表达式完成自定义的替换方式,例如
    echo ${test//[jh]/-}
    #-ttps://www.-ians-u.com
    

    参考教程

    相关文章

      网友评论

        本文标题:Linux字符串操作之截取、替换

        本文链接:https://www.haomeiwen.com/subject/onokdltx.html