shell 判断字符串是否存在数组中的实现示例
2020-11-18 04:06
5011 查看
语法格式: [[ "${array[@]}" =~ "字符串" ]]
示例:
#!/bin/sh ##数组 array=( address base cart company store ) # $1 如果存在,输出 $1 exists,$1 如果不存在,输出 $1 not exists if [ "$1" != null ];then if [[ "${array[@]}" =~ "${1}" ]]; then echo "$1 exists" elif [[ ! "${array[@]}" =~ "${1}" ]]; then echo "$1 not exists" fi else echo "请传入一个参数" fi
扩展:
这种方式不仅可以判断字符串是否存在数组中,也快判断字符串是否存在一个文本中。
## 判断字符串是否存在文本中 #!/bin/sh names="This is a computer , I am playing games in the computer" if [[ "${names[@]}" =~ "playing" ]]; then echo '字符串存在' fi
shell将字符串分隔成数组
#!/bin/bash a="hello,world,nice,to,meet,you" #要将$a分割开,先存储旧的分隔符 OLD_IFS="$IFS" #设置分隔符 IFS="," #如下会自动分隔 arr=($a) #恢复原来的分隔符 IFS="$OLD_IFS" #遍历数组 for s in ${arr[@]} do echo "$s" done
变量$IFS存储着分隔符,这里我们将其设为逗号 "," OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。
arr=($a)用于将字符串$a按IFS分隔符分割到数组$arr
${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项
${arr[@]}存储整个数组。
${!arr[@]}存储整个索引值:1 2 3 4 ...
${#arr[@]} 获取数组的长度。
到此这篇关于shell 判断字符串是否存在数组中的实现示例的文章就介绍到这了,更多相关shell 判断字符串在数组中内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:相关文章推荐
- 判断一个字符串是否存在于一个字符串数组中
- 在Shell里面判断字符串是否为空 ,文件存在,目录存在
- java笔记:Java字符串数组中判断是否存在某元素的方法
- JS 判断某个字符串是否存在与数组中
- Shell实现判断进程是否存在并重新启动脚本
- JS 判断某个字符串是否存在与数组中
- jquery获取class的值加入到数组,并判断数组中是否存在特定字符串
- Shell实现判断进程是否存在并重新启动脚本分享
- java判断String字符串数组中是否存在某个值
- jq判断一个字符串是否存在一个数组中
- JS实现判断数组是否包含某个元素示例
- python实现判断一个字符串是否是合法IP地址的示例
- JS 判断某个字符串是否存在与数组中
- JS实现的判断方法、变量是否存在功能示例
- 指针数组函数结合,判断两个字符串是否存在包含关系
- shell 判断字符串是否存在包含关系
- shell 判断字符串是否存在包含关系
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- matlab 判断cell数组里是否存在一个字符串
- java中怎么判断一个字符串是否存在数组中