Ultraedit,正则表达式帮助,提取2个值,逗号分隔

Ultraedit, regular expression help, extracting 2 values, comma separated

我有这个文件,我只想从我们的客户列表中提取电子邮件地址和名字。

文件中的示例:

a@abc.com,www.abc.com,2011-11-15 00:00:00,8.8.8.8,John,Doe,209 Park Rd,See,FL,33870,,,
b@abc.com,cde.com,2011-11-07 00:00:00,4.4.4.4,Erickson,Crast,136 Kua St # 1367,Pearl,HI,96782,,8084568190,

我想回去

a@abc.com,John
b@abc.com,Erickson

所以基本上是电子邮件地址和名字

我知道我可以在 powershell 中执行此操作,但也许在 ultraedit 中查找和替换会更快

注意:您会注意到某些字段未提供,因此会显示“,”,这意味着这些字段在用户注册时留空,但每行中的逗号数量相同,12 个是计数.

所以基本上都是由“,”分隔的字段。在不查看正确内容的情况下(即 email/timestamp 等需要具有某种格式,也可以检查)让我们尝试提取第一个和第四个字段的值。

所以我建议 Replace-Operation 您在其中搜索

^([^,]*),[^,]*,[^,]*,[^,]*,([^,]*),.*$

并将其替换为

 # 

选项:"Regular Expressions: Unix".

(只是插入了 # 以具有分隔符,尽管第一个空格就足够了。但我想你会明白的……)

结果:

a@abc.com # John
b@abc.com # Erickson