我希望搜索一个字符串是否在中间包含“CI”,无论它是多长。字母可以出现在任何地方,长度可以变化。我还希望将其用作 shell 脚本的条件开关。所以任何可以在 IF 中使用的命令来确定一个字符串是否包含这个。感谢帮助,因为这提供了如何使用它的洞察力。
问问题
53 次
2 回答
1
不是正则表达式,但适用于 POSIX sh(更便携)
case "$FOO" in
*CI*)
# do something
;;
esac
正则表达式
if expr "$FOO" : '.*CI' >/dev/null; then
# do something
fi
if echo "$FOO" | grep 'CI' >/dev/null; then
# do something
fi
不是带有许多外壳的正则表达式(bash ksh)
if [[ $FOO = *CI* ]]; then
# do something
fi
正则表达式 bash 特定
if [[ $FOO =~ CI ]]; then
# do something
fi
于 2012-10-25T18:27:48.590 回答
0
你可以使用
echo $FOO | grep CI
我猜。
于 2012-10-25T18:19:24.603 回答