我希望在shell编程的条件
中匹配我的2个字符串索引和index1我尝试按照
这样做 if [[ $1 == [iI][nN][dD][eE][xX][1]? ]]; then
echo "matched"
但它不起作用,这里基本上我想在我的正则表达式中说1应该发生0或1次。
提前致谢!
答案 0 :(得分:1)
您需要使用=~
运算符来匹配正则表达式,并确保使用锚点^
和$
来避免匹配不需要的文本:
[[ 'index1' =~ ^[iI][nN][dD][eE][xX]1?$ ]] && echo "ok" || echo "nope"
ok
[[ 'index' =~ ^[iI][nN][dD][eE][xX]1?$ ]] && echo "ok" || echo "nope"
ok