Regex清理未格式化电子邮件地址列表

Regex清理未格式化电子邮件地址列表,regex,email,Regex,Email,Hi最近在一个格式不好的csv文件中有一个电子邮件地址列表,其中包含以下内容: email@address.com; another@address.com.au; onemore@email.com; 电子邮件名称;andagain@email.com; 另一个名字;名字(firstnames@email.com); 如何删除非法电子邮件?我想,如果我能匹配每一行不包含@符号的话,会非常有帮助下面的正则表达式应该匹配所有不包含@符号的行: ^[^@]*$ 第一个^匹配行的开头,括号表示字符类

Hi最近在一个格式不好的csv文件中有一个电子邮件地址列表,其中包含以下内容: email@address.com; another@address.com.au; onemore@email.com; 电子邮件名称;andagain@email.com; 另一个名字;名字(firstnames@email.com);


如何删除非法电子邮件?我想,如果我能匹配每一行不包含@符号的话,会非常有帮助

下面的正则表达式应该匹配所有不包含@符号的行:

^[^@]*$
第一个
^
匹配行的开头,括号表示字符类。第二个插入符号表示“此类匹配除以下字符外的任何字符…”,
@
是我们希望禁止的字符。
*
表示“与字符类匹配的任意数量的字符”,而
$
则与行尾匹配

抱歉,这太迂腐了。:)

您应该注意到,实际匹配有效电子邮件要复杂得多,并且有点容易解释: