正则过滤"/>
pyspark正则过滤
在spark处理dataframe中可以使用where 与 rlike
from pyspark.sql.functions import col#筛选字段值等于以下值的数据
filter_reg = "^123$|^888$|^512$|^307$"filtered_df = df.where(col("tag").rlike(filter_reg))#反选
reverse_filtered_df = df.where(~col("tag").rlike(filter_reg))#筛出(排除)字段值等于以下值的数据, 效果等于上面的反选
filter_out_reg = "^.*(?<!123|888|512|307)$"filtered_out_df = df.where(col("tag").rlike(filter_out_reg))
参考:
正则表达式“正向匹配和反向匹配”的妙用_Smart_Maggie的博客-CSDN博客
更多推荐
pyspark正则过滤
发布评论