我有一個數組包含可能的閏年,我想檢查一個給定的年份是否屬於這個數組。檢查一個數組是否包含ksh值「case」
#!/bin/ksh
leap_yrs=()
for i in {1852..2010..4}; do
leap_yrs+=("$i")
done
我在這裏找到Check if an array contains a value下面的代碼
year=1900
case "${leap_yrs[@]}" in *"${year}"*)
echo "it could be a leap year"
;;
esac
它的工作原理,但我不知道爲什麼。
我會寫類似
year=1900
case "$year" in *"${leap_yrs[@]}"*)
echo "it could be a leap year"
;;
esac
但這不起作用。
我可以有一些解釋嗎? 感謝
MatteP
喜@Walter一個 感謝的子字符串。但是,我認爲我必須重新提出我的問題。 * *表示什麼?他們是否孤立我正在尋找的子串? 冒號定義字符串的含義是什麼? 謝謝 – pugliam