1. 方法一:[[ "${array[@]}" =~ "字符串" ]]
names="This is a computer , I am playing games in the computer" if [[ "${names[@]}" =~ "playing" ]]; then echo 'string exist' fi
2. 方法二,轉換為數組
#!/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[@]} 獲取數組的長度。
參考鏈接:
https://www.jb51.net/article/197827.htm