【转载】Shell判断字符串包含关系的几种方法
下面是直接copy的内容: (本来是不打算copy的,但是每次用到或看的时候都要跳转,感觉挺麻烦的。就直接copy了。)
方法一:利用grep查找
1 strA="long string" 2 strB="string" 3 result=$(echo $strA | grep "${strB}") 4 if [[ "$result" != "" ]] 5 then 6 echo "包含" 7 else 8 echo "不包含" 9 fi
先打印长字符串,然后在长字符串中 grep 查找要搜索的字符串,用变量result记录结果
如果结果不为空,说明strA包含strB。如果结果为空,说明不包含。
这个方法充分利用了grep 的特性,最为简洁。
方法二:利用字符串运算符
1 strA="helloworld" 2 strB="low" 3 if [[ $strA =~ $strB ]] 4 then 5 echo "包含" 6 else 7 echo "不包含" 8 fi
利用字符串运算符 =~ 直接判断strA是否包含strB。(这不是比第一个方法还要简洁吗摔!)
方法三:利用通配符
1 A="helloworld" 2 B="low" 3 if [[ $A == *$B* ]] 4 then 5 echo "包含" 6 else 7 echo "不包含" 8 fi
这个也很easy,用通配符*号代理strA中非strB的部分,如果结果相等说明包含,反之不包含。
方法四:利用case in 语句
1 thisString="1 2 3 4 5" # 源字符串 2 searchString="1 2" # 搜索字符串 3 case $thisString in 4 *"$searchString"*) echo Enemy Spot ;; 5 *) echo nope ;; 6 esa
这个就比较复杂了,case in 我还没有接触到,不过既然有比较简单的方法何必如此
方法五:利用替换
1 STRING_A=$12 STRING_B=$23 if [[ ${STRING_A/${STRING_B}//} == $STRING_A ]]4 then5 ## is not substring.6 echo N7 return 08 else9 ## is substring. 10 echo Y 11 return 1 12 fi
【转载】Shell判断字符串包含关系的几种方法相关推荐
- shell脚本字符串截取的8种方法
shell脚本字符串截取的8种方法 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. 1 echo ${var#*//} 其中 ...
- 判断字符串类型的几种方法
判断字符串类型的几种方法 1,如果是判断该字符串或者该字是不是中文的话,用以下代码: String s1;if(s1.matches("[\\u4E00-\\u9FA5]+")){ ...
- mysql数据库包含_MySQL数据库判断字符串包含的三种方法
方法一:SELECT * FROM users WHERE emails like "%b@email.com%"; 方法二: 利用 mysql 字符串函数 find_in_set ...
- shell中字符串截取的几种方法
在对嵌入式开发板试验的时候,经常会自行写一些小的脚本,来验证开发板的运行状态,其中就用到截取字符串的操作,由于一直记不住,索性就写到这里. 1. 使用cut str="abcdefg&quo ...
- JS判断字符串长度的几种方法(区分中文和英文)
目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) String.prototype.gblen = function() { var len = 0; for (var i=0; i< ...
- 【shell】if常用判断|if目录是否为空|判断字符串包含关系|与或
目录 shell中[ ]和[[]]的区别 判断目录是否为空 判断字符串包含关系 if判断写成一行/命令行中用if 单引号和双引号的区别 if常用判断 作者:bandaoyu 持续更新,连接:http: ...
- (转)Shell中获取字符串长度的七种方法
Shell中获取字符串长度的七种方法 原文:http://blog.csdn.net/jerry_1126/article/details/51835119 求字符串操作在shell脚本中很常用,下面 ...
- Shell脚本中计算字符串长度的5种方法
这篇文章主要介绍了Shell脚本中计算字符串长度的5种方法,来自于个人Shell脚本长期的开发经验,需要的朋友可以参考下 有时在Linux操作系统中需要计算某个字符串的长度,通过查询资料整理了下目前S ...
- shell php文件是否存在字符串中,shell 判断字符串是否存在数组中的实现示例
语法格式: [[ "${array[@]}" =~ "字符串" ]] 示例: #!/bin/sh ##数组 array=( address base cart ...
最新文章
- 一起学Hadoop——实现两张表之间的连接操作
- VS2012下基于Glut OpenGL glScissor示例程序:
- 看完书要及时消化(1)《暗时间》
- WordPress永久链接 静态化教程
- 构建可读性更高的 ASP.NET Core 路由
- JS+HTML画图的几种方法
- 处理硬件设备访问权限问题
- lisp scheme 果壳_common lisp和scheme的区别
- Pandas 文本数据方法 repeat( )
- python不换行空格输出_解决Python print输出不换行没空格的问题
- appcan代码迁出失败
- Could not find goal ‘assembly‘ in plugin org.apache.maven.plugins:maven-assembly-plugin: among avai
- lol服务器维护是拳头,问拳头-英雄联盟官方网站-腾讯游戏
- Vmware14安装ubuntu18
- Android 9.0蓝牙音乐上一首、下一首、暂停和播放
- 卫星移动通信现状与未来发展
- 利用GATK4.1 mutect2寻找体细胞突变(SNV和INDEL)
- 4x root 红米_小米红米Note4X获取root权限教程
- python 爬取企业注册信息_读书笔记(十)——python简单爬取企查查网企业信息,并以excel格式存储...
- [USACO 2.2.1] Preface Numbering