gpt4 book ai didi

excel - 仅从列表中获取唯一的条目

转载 作者:行者123 更新时间:2023-12-03 02:31:14 24 4
gpt4 key购买 nike

我有一个电子邮件地址列表,其中很多都具有相同的域。

假设我们有一个这样的列表:

  • User1@domain.com

  • User2@domain.com

  • User3@domain.com

  • User1@domain2.com

  • User2@domain2.com

我想要的是删除我不需要的项目:

  • User2@domain.com
  • User3@domain.com
  • User2@domain2.com

仅离开:

  • User1@domain.com
  • User1@domain2.com

我已经设法制作了一个 PS 脚本,您可以在其中删除 CSV 文件中包含我们不需要的电子邮件地址的行,但问题是该脚本正在删除包含该字符串的每个地址:

Get-Content 'C:\list.csv' | Where-Object {$_ -notmatch 'domain'}| Set-Content C:\out.csv

因此,如果我使用此脚本,它将删除包含“domain”的每一行,但我想保存包含它的第一行。

最佳答案

尝试:

#Seems this is a txtfile and not csv, so we'll just read it as text
Get-Content 'C:\list.csv' |
#Group by domain
Group-Object { $_ -replace '^.*@' } |
#Get first address per domain
ForEach-Object { $_.Group[0] } |
#Save to file
Set-Content C:\out.csv

输出:

User1@domain.com
User1@domain2.com

如果您只需要域名,可以使用:

#Read file
Get-Content 'C:\list.csv' |
#Group by domain
Group-Object { $_ -replace '^.*@' } |
#List group names (domain names)
Select-Object -ExpandProperty Name |
#Save to file
Set-Content C:\out.csv

输出:

domain.com
domain2.com

关于excel - 仅从列表中获取唯一的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42899721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com