bash:using =〜with regex contains#

时间:2015-07-02 20:39:20

标签: regex bash

好的伙计们。我正在编写一个bash脚本,并希望使用#运算符将字符串与包含=~的正则表达式进行比较。

这是我到目前为止所做的:

if [[ ${line} =~ \s*\# ]]; then
     #do things
fi

正如您所看到的,我试图使用#来逃避\,根据this article这应该是可能的。然而,这对我来说真的很混乱。我的语法高亮显示仍然突出显示#之后的文本,就像它是评论一样。

我的语法高亮不正确吗? #的转义是否会干扰正则表达式的解析?有什么方法可以使用引号来避免这个问题吗?

1 个答案:

答案 0 :(得分:4)

你可以这样做:

re='\s*#'

if [[ $line =~ $re ]]; then
     #do things
fi