regex - 使用 Scala 中的 Spark 使用 Regex 过滤 DataFrame

标签 regex scala apache-spark spark-dataframe

我想过滤掉 Spark 中的行 DataFrame具有看起来像真实的电子邮件列,这是我尝试过的:

df.filter($"Email" match {case ".*@.*".r => true case _ => false})

但这不起作用。正确的做法是什么?

最佳答案

要扩展@TomTom101 的评论,您要查找的代码是:

df.filter($"Email" rlike ".*@.*")
match的主要原因不工作是因为 DataFrame有两个 filter functions它采用字符串或列。这不像 RDD与一个 filter接受来自 T 的函数到 bool 值。

关于regex - 使用 Scala 中的 Spark 使用 Regex 过滤 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33964957/

相关文章:

c# regex - 组和嵌套组

scala - SBT 项目中的 "resources"文件夹有什么用?

scala - PlayFramework 2.3.1 NoClassDefFoundError : org/fusesource/jansi/AnsiOutputStream

apache-spark - Google Dataproc 集群内加密

apache-spark - Hadoop 与 Spark 澄清

regex - 从 Spark 数据框中的字符串列中提取单词

正则表达式匹配任何大于 1 的整数

java - 我可以使用正则表达式删除 "any whitespace that is not between quotes"吗?

mysql - RegExp 在查询中匹配电话号码格式的问题

git - sbt 如何从 git 中提取依赖项?