壳如何实现判断字符串是否存在数组中?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
语法格式:<代码>[[“${阵列[@]}“;=~“字符串“;]]代码>
示例:
# !/bin/sh # #数组 数组=( 地址 基地 车 公司 商店 ) # 1美元如果存在,输出1美元,1美元如果不存在,输出1美元不存在 “如果(“1美元!=null];然后 如果[[“$ {array [@]}“;=~“$ {1}“;]];然后 回声“1美元exists" elif [[!“${阵列[@]}“;=~“$ {1}“;]];然后 回声“1美元不是exists" fi 其他的 回声“请传入一个参数, fi
扩展:
这种方式不仅可以判断字符串是否存在数组中,也快判断字符串是否存在一个文本中。
# #判断字符串是否存在文本中 # !/bin/sh 名称=?这是一台电脑,我玩游戏computer" 如果[[“${名称[@]}“;=~“playing"]];然后 回声& # 39;字符串存在& # 39; fi
# !/bin/bash a=癶ello, world,不错,,见面,你。 #要将美元一分割开,先存储旧的分隔符 OLD_IFS=癐FS"美元; #设置分隔符 “IFS=?; #如下会自动分隔 arr=(美元) #恢复原来的分隔符 IFS=癘LD_IFS"美元; #遍历数组 年代的$ {arr [@]} 做 回声“s"美元; 做
变量IFS美元存储着分隔符,这里我们将其设为逗号“,“OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。
arr=(美元)用于将字符串一个按美元IFS分隔符分割到数组arr
美元$ {arr [0]} $ {arr [1]}…分别存储分割后的数组第1 2…项
$ {arr[@]}存储整个数组。
$ {!加勒比海盗[@]}存储整个索引值:1 2 3 4…
$ {# arr[@]}获取数组的长度。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。