开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

DataWorks Invalid regular expression pattern

错误:invalid regular expression pattern: in function rlike, pattern cannot be empty string

代码:
MAX(
CASE WHEN c.brand_id IS NULL
OR a.title IS NULL
OR c.op_brand_words IS NULL THEN 0
WHEN c.brand_id IS NOT NULL AND c.op_brand_words = '' THEN 0
WHEN c.brand_id IS NOT NULL AND a.title RLIKE REGEXP_REPLACE(REGEXP_REPLACE(c.op_brand_words,'[[:punct:]]',''),',','|') THEN 1
ELSE 0
END
) AS itm_brand_in_title_b

展开
收起
游客d2romxgcnr2ru 2024-08-08 16:50:48 53 0
1 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    使用 COALESCE 函数来确保传入 REGEXP_REPLACE 的参数不会是空字符串。
    使用 IF 或 CASE WHEN 语句来检查字符串是否为空,并在这种情况下提供一个非空的默认值。

    MAX(
    CASE
    WHEN c.brand_id IS NULL
    OR a.title IS NULL
    OR c.op_brand_words IS NULL THEN 0
    WHEN c.brand_id IS NOT NULL AND c.op_brand_words = '' THEN 0
    WHEN c.brand_id IS NOT NULL AND a.title RLIKE COALESCE(REGEXP_REPLACE(REGEXP_REPLACE(c.op_brand_words, '[[:punct:]]', ''), ',', '|'), '') THEN 1
    ELSE 0
    END
    ) AS itm_brand_in_title_b

    2024-08-09 09:05:34
    赞同 7 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 相关电子书

    更多
    DataWorks数据集成实时同步最佳实践(含内测邀请)-2020飞天大数据平台实战应用第一季 立即下载
    DataWorks调度任务迁移最佳实践-2020飞天大数据平台实战应用第一季 立即下载
    DataWorks商业化资源组省钱秘籍-2020飞天大数据平台实战应用第一季 立即下载

    相关实验场景

    更多