【发布时间】:2012-09-27 04:49:10
【问题描述】:
我正在尝试使用 bash 中可用的扩展正则表达式运算符(?、*、+、@、!)。手册说我只需要用括号括起来模式列表,然后在左括号之前使用运算符。所以如果我想要一个零个或多个 a 的模式:
if [[ "$1" =~ *(a) ]]
then
echo $1
fi
但这不起作用。我做错了什么?
【问题讨论】:
-
在文档中究竟是在哪里说操作员必须先于小组?在我知道的任何正则表达式引擎中都不是这种情况,也不适用于 bash。 (即使是,“零个或多个 a's”匹配任何字符串。)