Regexp\u替换Scala Spark数据帧中的部分unicode(表情符号)
我正在尝试使用sparkRegexp\u替换Scala Spark数据帧中的部分unicode(表情符号),regex,scala,apache-spark,unicode,apache-spark-sql,Regex,Scala,Apache Spark,Unicode,Apache Spark Sql,我正在尝试使用sparkregexp\u replace替换所有unicode以开头的表情符号 \uD83D并用\uD83D替换unicode的这一部分,但我运气不好 以下是一个例子: 我想获取“的所有实例,您可以使用此正则表达式\\B\uD83D.{1}并替换为捕获的组$1和空格。然后修剪以去掉最后的空格并拆分: val df=Seq( (“那么,您想1)检查每个图形,2)如果是以\uD83D开头的表情符号,请用空格括起来?然后在Scala中,它看起来像“\P{M}\P{M}*+”.r.rep
regexp\u replace
替换所有unicode以开头的表情符号
\uD83D
并用\uD83D
替换unicode的这一部分,但我运气不好
以下是一个例子:
我想获取“的所有实例,您可以使用此正则表达式
\\B\uD83D.{1}
并替换为捕获的组$1
和空格。然后修剪以去掉最后的空格并拆分:
val df=Seq(
(“那么,您想1)检查每个图形,2)如果是以\uD83D
开头的表情符号,请用空格括起来?然后在Scala中,它看起来像“\P{M}\P{M}*+”.r.replaceAllIn(这里的_字符串_,M=>if(M.group(0).startsWith(“\uD83D”))s“${M.group(0)}”else M.group(0))
。虽然不知道如何在spark中实现,但是regexp\u replace
似乎不支持lambda作为替换参数。问题是检测表情符号的开始。