【发布时间】:2023-08-17 09:27:01
【问题描述】:
我想在 cygwin 中使用 grep 搜索文本文件中的电话号码。
号码是0570-2770521,我用的是正则表达式
“[0-9]{4}-[0-9]{7}”,总命令为grep "[0-9]{4}-[0-9]{7}" ./list.txt,但它不起作用。
然后我改成grep "[0-9]\{4\}-[0-9]\{7\}" ./list.txt,就可以了!
但是既然{}是元字符,如果转义它们就只是文字字符,那么它们怎么能代表[0-9]的匹配次数呢?
我理解错了吗? 希望有人能帮忙解释一下这个困惑,在此先感谢!
最好的问候!
【问题讨论】:
-
在 bre 中您需要转义 {} 而在 pcre 中您不需要转义 {} 以将它们用作 metachar
标签: regex cygwin curly-brackets