【发布时间】:2019-04-18 02:18:43
【问题描述】:
我对 grep 的行为相当陌生。我有一堆包含如下行的 XML 文件:
<identifier type="abc">abc:def.ghi/g1234.ab012345</identifier>
<identifier type="abc">abc:def.ghi/g5678m.ab678901</identifier>
我想在斜线之后获取标识符部分并使用RegexPal构造一个正则表达式:
[a-z]\d{4}[a-z]*\.[a-z]*\d*
它突出了我想要的一切。完美的。现在,当我在同一个文件上运行 grep 时,我没有得到任何结果。而且正如我所说,我对 grep 真的不太了解,所以我尝试了所有不同的组合。
grep [a-z]\d{4}[a-z]*\.[a-z]*\d* test.xml
grep "[a-z]\d{4}[a-z]*\.[a-z]*\d*" test.xml
egrep "[a-z]\d{4}[a-z]*\.[a-z]*\d*" test.xml
grep '[a-z]\d{4}[a-z]*\.[a-z]*\d*' test.xml
grep -E '[a-z]\d{4}[a-z]*\.[a-z]*\d*' test.xml
我做错了什么?
【问题讨论】: