shell 判断字符串是否存在数组中的实现示例

语法格式: [[ "${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 判断字符串在数组中内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • shell脚本字符串和数组的使用操作方法

    字符串 可以使用单引号和双引号定义字符串变量但是单引号中不支持变量解析 #! /bin/bash username="mayuan" str_1="hello ${username}" str_2='hello ${username}' echo $str_1 # hello mayuan echo $str_2 # hello ${username} 获取字符串的长度 #! /bin/bash username="mayuan" echo ${

  • shell 判断字符串是否存在数组中的实现示例

    语法格式: [[ "${array[@]}" =~ "字符串" ]] 示例: #!/bin/sh ##数组 array=( address base cart company store ) # $1 如果存在,输出 $1 exists,$1 如果不存在,输出 $1 not exists if [ "$1" != null ];then if [[ "${array[@]}" =~ "${1}" ]]; t

  • jQuery 判断是否包含在数组中Array[]的方法

    jQuery 判断是否包含在数组中Array[]的方法 var Menustr="1,2,3,4,5,6,7,8,9,10,11,12,"; var Menarrstr=Menustr.split(","); if ($.inArray($(this).attr("id"), Menarrstr)) { //... } 以上这篇jQuery 判断是否包含在数组中Array[]的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多

  • jQuery简单判断值是否存在于数组中的方法示例

    本文实例讲述了jQuery简单判断值是否存在于数组中的方法.分享给大家供大家参考,具体如下: <!DOCTYPE> <html> <head> <title>jquery判断值是否存在于数组中</title> <meta charset="utf-8"> </head> <body> <script src="http://libs.baidu.com/jquery/2.0.

  • Shell判断字符串变量是否为空的方法实现

    目录 Bash Shell 判断一个变量是否为空 检查bash shell变量是否为空的另一个方式 您可以将 -z 选项传递给 if 命令或条件表达式.如果STRING的长度为0,variable ($var)为空.test命令用于检查文件类型并比较值.这个页面显示了如何使用test命令确定bash shell变量是否为空. 判断 bash 变量是否为空: 要点:变量两端用双引号括起来 如果bash变量未设置或设置为空字符串,则返回true: if [ -z "$var" ]; 另一个

  • C语言面试C++二维数组中的查找示例

    目录 二维数组中的查找 面试题3: 暴力遍历 动态基点操作 二维数组中的查找 面试题3: 似题: 我做过这个类似的有杨氏矩阵为背景的,实际上是一样的 暴力遍历 二维数组暴力遍历的话时间复杂度为O(n2) 虽然暴力但是应付学校考试这个就是一把好手 #include<stdio.h> //const 就是因为二维数组是定死的 int search(const int arr[4][4], int num,unsigned int* prow,unsigned int* pcol) { int i

  • Python判断字符串是否xx开始或结尾的示例

    判断是否xx开始 使用startswith 示例代码: String = "12345 上山打老虎" if str(String).startswith('1'): #判断String是否以"虎"结尾 print("有老虎") else: print("没老虎") 执行结果: 有老虎 判断是否xx结尾 使用endswith 示例代码1: String = "12345 上山打老虎" if str(Strin

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

    前言 现在每次分析网站日志的时候都需要判断百度蜘蛛是不是真实的蜘蛛,nslookup之后需要判断结果中是否包含"baidu"字符串 以下给出一些shell中判断字符串包含的方法,来源程序员问答网站 stackoverflow 以及segmentfault. 方法一:利用grep查找 strA="long string" strB="string" result=$(echo $strA | grep "${strB}") if

  • linux shell判断字符串为空的正确方法示例

    help命令可以查看帮助 help test Linux 下判断字符串是否为空,有一个大坑! 首先想到的两个参数: -z :判断 string 是否是空串 -n :判断 string 是否是非空串 正确做法: #!/bin/sh STRING= if [ -z "$STRING" ]; then echo "STRING is empty" fi if [ -n "$STRING" ]; then echo "STRING is not

  • JS实现字符串去重及数组去重的方法示例

    本文实例讲述了JS实现字符串去重及数组去重的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net js数组.字符串去重</title> </head> <body> <script type="text/j

  • javascript中数组中求最大值示例代码

    复制代码 代码如下: <html> <head> <title>数组的最大值的获取</title> <script> //定义数组 var arr = [1,4,3,9,5,0,-1,7,22]; //最大值的下标,先假定为第一个元素的下标 var index = 0; for(var x = 0; x < arr.length; x++){ if(arr[index] < arr[x]){ index = x; } } docume

随机推荐