gpt4 book ai didi

regex - 为什么这个简单的正则表达式与我认为的不匹配?

转载 作者:行者123 更新时间:2023-12-01 02:57:03 25 4
gpt4 key购买 nike

我有一个类似于以下示例的数据文件。我添加了 '%' 来代替 \t , 制表符控制字符。

1234:56%  Alice Worthington
alicew% Jan 1, 2010 10:20:30 AM% Closed% Development
Digg:
Reddit:
Update%% file-one.txt% 1.1% c:/foo/bar/quux
Add%% file-two.txt% 2.5.2% c:/foo/bar/quux
Remove%% file-three.txt% 3.4% c:/bar/quux
Update%% file-four.txt% 4.6.5.3% c:/zzz

... many more records of the above form

我感兴趣的记录是以“更新”、“添加”、“删除”等开头的行。我不会提前知道这些行以什么开头,或者在它们之前有多少行。我知道它们总是以一串字母开头,后跟两个制表符。所以我写了这个正则表达式:
generate-report-for 1234:56 | egrep "^[[:alpha:]]+\t\t.+"

但这匹配零线。我哪里做错了?

编辑:无论我使用 '...' 都得到相同的结果或 "..."egrep表达式,所以我不确定它是否是 shell 。

最佳答案

显然 \t不是 egrep 的特殊字符。您可以使用 grep -P启用 Perl 兼容的正则表达式引擎,或使用 CtrlvCtrli 插入文字标签

更好的是,您可以使用优秀的 ack

关于regex - 为什么这个简单的正则表达式与我认为的不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2587108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com