如何在 Apache Pig 中查找包含大量单词的列是不是具有真实的电子邮件 ID?
Posted
技术标签:
【中文标题】如何在 Apache Pig 中查找包含大量单词的列是不是具有真实的电子邮件 ID?【英文标题】:How to find whether a column with lots of words has a genuine email id or not in Apache Pig?如何在 Apache Pig 中查找包含大量单词的列是否具有真实的电子邮件 ID? 【发布时间】:2017-01-23 20:05:53 【问题描述】:我有一列有段落。这是一个 10000 行的列,我需要在其中找到哪一列具有真实的电子邮件 ID。我用过columnname matches '(.*)@(.*).(.*)'
,它也给了我不需要的'@nelson' '.... @kumar...'
等输出。我只需要一个真实的电子邮件 ID。请让我知道如何使用 Apache Pig 代码在如此庞大的段落中找到它。
【问题讨论】:
【参考方案1】:由于 PIG 使用 Java 正则表达式 form,您可以使用类似这样的东西,它可以涵盖大多数情况。
columnname matches '^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]2,6$'
如果您需要更多表达式,一个简单的“java 电子邮件验证正则表达式”搜索应该会为您提供大量表达式来验证电子邮件地址。
【讨论】:
以上是关于如何在 Apache Pig 中查找包含大量单词的列是不是具有真实的电子邮件 ID?的主要内容,如果未能解决你的问题,请参考以下文章
Apache Pig - 如何维护一个分布式查找表以供我的 python UDF 访问?