我有这个在 regex101 上验证的正则表达式:
[a-zA-Z0-9-_.]+\@[a-zA-Z0-9-]+\.+[a-zA-Z0-9-]{2,4}
但是当我尝试使用 sed 运行它时,我得到:sed: -e expression #1, char 52: Invalid range end
据我了解,当您定义范围时,这通常是一个问题:Az 在某些版本的 sed 中,但在这里我放的是 a-zA-Z? 所以我猜这是导致错误的特殊字符,但我该如何解决呢?
赛德:
$( sed -E -n '/[a-zA-Z0-9-_.]+\@[a-zA-Z0-9-]+\.+[a-zA-Z0-9-]{2,4}/p' < emails.txt )