xinhu1300 发表于 2018-8-28 07:26:42

Linux下的shell脚本的字符串截取

  1 #! /bin/bash
  2
  3 str="http://www.baidu.com/test.htm"
  4
  5 #echo ${str}
  运行结果为:http://www.baidu.com/test.htm
  方法一:#截取,删除左边字符,保留右边字符
  echo ${str#*//}
  #*//表示从左边删除第一个//号及左边的所有字符,即删除http://
  运行结果为:www.baidu.com/test.htm
  方法二:##截取,删除左边字符,保留右边字符
  echo ${str##*/}
  ##*/表示删除最后一个/(即最右边的/)及左边所有的字符
  运行结果为:test.htm
  方法三:%截取,删除右边字符,保留左边字符
  echo ${str%/*}
  %/*表示从最右边开始,删除第一个/及右边的所有字符
  运行结果为:http://www.baidu.com
  方法四:%%截取,删除右边字符,保留左边字符
  echo ${str%%/*}
  %%/*表示删除从右边开始的最后一个/(最左边的/开始)及右边的所有字符
  运行结果:http:
  方法五:从左边第几个字符开始,及字符的个数
  echo ${str:0:5}
  0表示从左边的第一个字符开始,5表示总共的字符个数
  运行结果为:http:
  方法六:从坐标的第几个字符开始一直到字符串结束
  echo ${str:7}
  7表示从字符串的第八个字符开始一直到字符串结束
  运行结果为:www.baidu.com/test.htm
  方法七:从右边第几个字符开始及字符的个数
  echo ${str:0-7:3}
  0-7表示从右边的第几个字符开始,3表示字符的个数
  运行结果为:est
  方法八:从右边的第几个字符开始一直到结束
  echo ${str:0-7}
  表示从右边第七个字符开始,一直到结束
  运行结果为:est.htm

页: [1]
查看完整版本: Linux下的shell脚本的字符串截取