全部产品
Search
文档中心

实时计算Flink版:REGEXP_REPLACE

更新时间:Aug 01, 2023

本文为您介绍如何使用REGEXP_REPLACE函数,用目标字符串替换指定字符串,并返回新的字符串。

使用限制

仅实时计算引擎VVR 3.0.0及以上版本支持REGEXP_REPLACE函数。

语法

VARCHAR REGEXP_REPLACE(VARCHAR str, VARCHAR pattern, VARCHAR replacement)

入参

参数

数据类型

说明

str

VARCHAR

指定的字符串。

pattern

VARCHAR

被替换的字符串。

replacement

VARCHAR

用于替换的目标字符串。

重要
  • 如果入参为NULL或者正则不合法时,则返回NULL。

  • 系统会将pattern和replacement的字符串解析成正则表达式,正则表达式使用Java Pattern进行处理,因此pattern和replacement的字符串需遵从Java Regex语法。

示例

  • 测试数据

    表 1. T1

    str1(VARCHAR)

    pattern1(VARCHAR)

    replace1(VARCHAR)

    2014-03-13

    -

    -

    2014-03-13

    s

    2014-03-13

    (

    s

    100-200

    (\d+)

    num

  • 测试语句

    SELECT REGEXP_REPLACE(str1, pattern1, replace1) as `result`
    FROM T1;
  • 测试结果

    result(VARCHAR)

    20140313

    s2s0s1s4s-s0s3s-s1s3s

    NULL

    num-num