如果我在终点站[[ "0" =~ "^[0-9]+$" ]] && echo hello
,我希望看到“你好”这个词
然而,没有任何东西被打印出来。我做错了什么?
答案 0 :(得分:5)
您需要删除正则表达式中的双引号。也就是说,不要将你的正则表达式用双引号括起来。
[[ "0" =~ ^[0-9]+$ ]]
答案 1 :(得分:3)
应该是:
[[ "0" =~ ^[0-9]+$ ]] && echo hello
请注意,第二部分未用双引号括起来,否则它将被视为字符串" ^ [0-9] + $"而不是正则表达式。要确认这一点,请尝试:
[[ "^[0-9]+$" =~ "^[0-9]+$" ]] && echo hello