如何使用regex_replace替换pyspark dataframe

时间:2017-12-21 12:36:58

标签: regex apache-spark dataframe pyspark

数据框中有一列批次。它具有'9%','$ 5'等值。

我需要使用regex_replace,以便从上面的示例中删除特殊字符并仅保留数字部分。

例如9和5在同一列中分别取代9%和$ 5。

3 个答案:

答案 0 :(得分:1)

df.withColumn("batch",regexp_replace(col("batch"), "/[^0-9]+/", ""))

答案 1 :(得分:0)

到目前为止你尝试了什么?

select regexp_replace("'$5','9%'","[^0-9A-Za-z]","")

答案 2 :(得分:0)

您可以使用此正则表达式:

\W+

\W - 匹配任何非单词字符(等于[^ a-zA-Z0-9 _])