2014-04-03 26 views
0

我有一个大约有800封电子邮件的.csv文件。我需要从地址中删除别名,以便只导入域。我还需要删除重复项目,但我可以自己做。需要从.csv(powershell)中的电子邮件列表中删除别名

我尝试了各种形式的获取内容和替换命令,但无法将其格式化正确。

所以我有一个巨大的

[email protected]地址, 我需要分析那些只是 domain.com地址列表。

这不是要在PowerShell中完成,如果有人有另一个(免费)选项。

在此先感谢。

+0

什么是您的.csv样子(有没有更多的字段存在不仅仅是电子邮件地址,或者是它只是一个地址列表)? – mjolinor

回答

0

好吧,给定一个CSV文件,例如:

Name,Email 
John Doe,[email protected] 
Jane Smith,[email protected] 
Bill Anderson,[email protected] 

你可以这样做:

$EmailList = import-csv emaillist.csv|?{$_.email -match "@.+\..+"}|%{$Matches.values}|select -Unique 

,或者如果它只是一个列表,没有标题行或任何东西,例如:

[email protected] 
[email protected] 
[email protected] 

你可以这样做:

$EmailList = gc emaillist.csv|?{$_ -match "@.+\..+"}|%{$Matches.values}|select -Unique 
0

如果包含电子邮件的列是最后一列(打开文件时最右侧,或唯一一列)。 这将返回所需的值:

gc YourEmailsList.csv | % { 
    [regex]::matches($_,"(?<[email protected]).*\.*[a-z]").value 
} 
相关问题