我正在学习grepatm,但我很难理解 kleene 星元字符的工作原理。手册页描述了*匹配前一个字符零次或多次。我正在使用一个名为test以下内容的文件
*a
123ab
1234
abcdef
a?
?
grep 'a*' test应该匹配零次或多次出现,a并且如解释的那样在输出中打印文件的每一行test。该文档进一步描述了要匹配元字符,例如*必须通过在它们前面加上反斜杠来进行转义\。grep '*' test但是和的输出grep '\*' test是一样的。输出:*a
为什么*匹配自身而不在其前面加上\?