如何将正则表达式转换为grep格式

3

我正在尝试使用正则表达式在记事本++中匹配的内容,使其能够被grep。我想要匹配email:32个字符(a-f0-9):3个字符(任意字符/符号)

这里是一个例子:

Stack@overflow.com:999999999999999999999999999999a1:&U,  

到目前为止,我已经能够使用正则表达式进行匹配,使用的是:

[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}:[a-f0-9]{32}:

但是我不确定如何匹配最后3个字符(可以是任何字符)。

此外,在尝试时:

grep "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}:[a-f0-9]{32}:" input.txt > output.txt

我的文件没有输出任何内容,这对我来说似乎很奇怪。我正在使用 Windows 上的 Cygwin 终端执行这些 grep 命令。


请勿将解决方案公告编辑到问题中。如果已有答案,请接受其中一个(即单击其旁边的“打勾”)。如果您的解决方案尚未被现有答案覆盖,您也可以创建自己的答案,并接受它。请参阅https://stackoverflow.com/help/self-answer进行比较。 - Yunnosch
1个回答

3

如果您的环境支持,可以使用 grep -Eegrep

     -E, --extended-regexp
         Interpret pattern as an extended regular expression (i.e. force grep to behave as egrep).

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接