中国源码网

用Shell判断字符串包含关系的方法小结

  • 时间:2018-11-25 19:49 编辑:转载 来源:网络 阅读:758
  • 扫一扫,手机访问
摘要:用Shell判断字符串包含关系的方法小结前言现在每次分析网站日志的时候都需要判断百度蜘蛛是不是真实的蜘蛛,nslookup之后需要判断结果中是否包含“baidu”字符串以下给出一些shell中判断字符串包含的方法,来源程序员问答网站 stackoverf

用Shell判断字符串包含关系的方法小结前言

现在每次分析网站日志的时候都需要判断百度蜘蛛是不是真实的蜘蛛,nslookup之后需要判断结果中是否包含“baidu”字符串

以下给出一些shell中判断字符串包含的方法,来源程序员问答网站 stackoverflow 以及segmentfault。

方法一:利用grep查找

strA="long string"

strB="string"

result=$(echo $strA | grep "${strB}")

if [[ "$result" != "" ]]

then

??echo "包含"

else

??echo "不包含"

fi

先打印长字符串,然后在长字符串中 grep 查找要搜索的字符串,用变量result记录结果

如果结果不为空,说明strA包含strB。如果结果为空,说明不包含。

这个方法充分利用了grep 的特性,最为简洁。

方法二:利用字符串运算符

strA="helloworld"

strB="low"

if [[ $strA =~ $strB ]]

then

  echo "包含"

else

  echo "不包含"

fi

利用字符串运算符 =~ 直接判断strA是否包含strB。(这不是比第一个方法还要简洁吗!)

方法三:利用通配符

A="helloworld"

B="low"

if [[ $A == *$B* ]]

then

  echo "包含"

else

  echo "不包含"

fi

这个也很easy,用通配符*号代理strA中非strB的部分,如果结果相等说明包含,反之不包含。

方法四:利用case in 语句

thisString="1 2 3 4 5" # 源字符串

searchString="1 2" # 搜索字符串

case $thisString in

  *"$searchString"*) echo Enemy Spot ;;

  *) echo nope ;;

esa

这个就比较复杂了,case in 我还没有接触到,不过既然有比较简单的方法何必如此

方法五:利用替换

STRING_A=$1

STRING_B=$2

if [[ ${STRING_A/${STRING_B}//} == $STRING_A ]]

  then

    ## is not substring.

    echo N

    return 0

  else

    ## is substring.

    echo Y

    return 1

  fi

这个也挺复杂

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【电脑网络|程序设计开发】MySQL去除查询结果重复值(2020-06-17 11:01)
【电脑网络|互联网】教你纯手动下载抖音无水印视频(2020-06-10 14:22)
【电脑网络|程序设计开发】2020最新网站防止被举报代码 隐藏QQ举报入口代码 最新隐藏QQ举报页面代码(2020-06-02 15:48)
【技术分享|linux】VMWare中CentOS ifcfg-eth0配置方法(2020-05-25 15:11)
【电脑网络|服务器应用】Linux常用动态库合集|centos常用动态库合集(2020-05-25 09:50)
【技术分享|php】PHP.form表单参数安全验证函数,mysql防止sql注入!(2020-05-09 16:58)
【电脑网络|程序设计开发】wdcp管理系统源代码加密解密方法,Linux服务器管理系统!(2020-05-09 16:56)
【技术分享|linux】CentOS系统yum源配置修改、yum安装软件包源码包出错解决办法!(2020-05-09 16:52)
【电脑网络|程序设计开发】Navicat for MySQL远程连接数据库, 出现 Can't connect to mysql server on xxx.xxx.xxx.xxx(10038) 的解决方法(2020-05-09 16:51)
【技术分享|php】PHP字符串截取方法,支持中文和其他编码(2020-05-09 16:48)
底部广告
免责声明:本站资源仅供学习和研究使用,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。不得任何商业用途,不得经营非法游戏或违反国家法律。一切商业行为与本站无关。否则后果自负!切记!

本站创立于2009年,已运行,感谢一路相伴

本站专注为新手提供手游源码、网页游戏源码、游戏一键端资源教程开发技术交流学习论坛

本站资源来自互联网搜集,仅供本地电脑单机学习和交流,请勿用于商业用途,请自觉在24小时内删除。
若有侵权与文章中不妥之处,请联系邮箱:76891828#^_^#qq.com(手机随时接收邮件)并出示相关证明以便删除。敬请谅解!