【发布时间】:2013-07-22 15:23:23
【问题描述】:
我正在尝试从使用 egrep -o -e 的文件中获取电子邮件地址,但遇到了行尾地址问题。
这是我的正则表达式:
egrep -o -e "[._a-zA-Z0-9]+@[._a-zA-Z0-9]+.[._a-zA-Z0-9]+" ~/myfile.txt
我意识到这不会捕获电子邮件地址的所有变体,但如果地址位于行尾,这就是我得到的:
user@_12345@myemail.com\ul
所以我想我会尝试负前瞻,但我不知道如何正确使用它。我在网上读过一些东西,但我对它的工作原理感到困惑。
这是我尝试过的:
egrep -o -e "(?!\\[._a-zA-Z0-9]+@[._a-zA-Z0-9]+.[._a-zA-Z0-9]+)" ~/myfile.txt
Bash 失败并显示 event not found: \\[._a
有什么建议吗?
【问题讨论】:
标签: regex grep negative-lookahead