Linux 的字符串截取很有用。有八种方法。

Posted 勿忘初心-Lislie杰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 的字符串截取很有用。有八种方法。相关的知识,希望对你有一定的参考价值。

  1. 假设有变量 var=http://www.aaa.com/123.htm

    1. # 号截取,删除左边字符,保留右边字符。

    echo ${var#*//}

    其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符

    即删除 http://

    结果是 :www.aaa.com/123.htm

    2. ## 号截取,删除左边字符,保留右边字符。

    echo ${var##*/}

    ##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符

    即删除 http://www.aaa.com/

    结果是 123.htm

    3. %号截取,删除右边字符,保留左边字符

    echo ${var%/*}

    %/* 表示从右边开始,删除第一个 / 号及右边的字符

    结果是:http://www.aaa.com

    4. %% 号截取,删除右边字符,保留左边字符

    echo ${var%%/*}

    %%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符

    结果是:http:

    5. 从左边第几个字符开始,及字符的个数

    echo ${var:0:5}

    其中的 0 表示左边第一个字符开始,5 表示字符的总个数。

    结果是:http:

    6. 从左边第几个字符开始,一直到结束。

    echo ${var:7}

    其中的 7 表示左边第8个字符开始,一直到结束。

    结果是 :www.aaa.com/123.htm

    7. 从右边第几个字符开始,及字符的个数

    echo ${var:0-7:3}

    其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。

    结果是:123

    8. 从右边第几个字符开始,一直到结束。

    echo ${var:0-7}

    表示从右边第七个字符开始,一直到结束。

    结果是:123.htm

    注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)

    su226

       su226

      136***[email protected]

       参考地址

    9个月前 (04-23)
  2.    wenxin667

      140***[email protected]

    @su226

    描述的有点儿不容易懂,看了好久才勉强明白 ## %%。

    #、## 表示从左边开始删除。一个 # 表示从左边删除到第一个指定的字符;两个 # 表示从左边删除到最后一个指定的字符。

    %、%% 表示从右边开始删除。一个 % 表示从右边删除到第一个指定的字符;两个 % 表示从左边删除到最后一个指定的字符。

    删除包括了指定的字符本身。

    wenxin667

       wenxin667

      140***[email protected]

    5个月前 (08-24)
  3.    amau

      [email protected]***t

    #!bin/bash
    #author:amau
    
    var="http://www.runoob.com/linux/linux-shell-variable.html"
    
    s1=${var%%t*}
    s2=${var%t*}
    s3=${var%%.*}
    s4=${var#*/}
    s5=${var##*/}

    echo "关于字符串的截取%,#的使用方法"
    echo "原字符串为:"${var}
    echo "%%t*的效果:"${s1}
    echo "%t*的效果:"${s2}
    echo "%%.*的效果:"${s3}
    echo "#*/的效果:"${s4}
    echo "##*/的效果:"${s5}

    运行结果:

    关于字符串的截取%,#的使用方法
    原字符串为:http://www.runoob.com/linux/linux-shell-variable.html
    %%t*的效果:h
    %t*的效果:http://www.runoob.com/linux/linux-shell-variable.h
    %%.*的效果:http://www
    #*/的效果:/www.runoob.com/linux/linux-shell-variable.html
    ##*/的效果:linux-shell-variable.html






以上是关于Linux 的字符串截取很有用。有八种方法。的主要内容,如果未能解决你的问题,请参考以下文章

Linux 的字符串截取拼接方法

linux截取字符串的多种方法

Shell脚本8种字符串截取方法总结

Linux - 截取字符串的多种方法

Linux shell字符串截取与拼接

Linux Shell脚本编程--字符串截取