数据仓库服务 GaussDB(DWS)-字符处理函数和操作符:regexp_split_to_table(string text, pattern text [, flags text])

时间:2025-02-12 15:05:09

regexp_split_to_table(string text, pattern text [, flags text])

描述:用POSIX正则表达式作为分隔符,分隔string。如果没有与pattern的匹配,该函数返回string。如果有至少有一个匹配,对每一个匹配它都返回从上一个匹配的末尾(或者串的开头)到这次匹配开头之间的文本。当没有更多匹配时,它返回从上一次匹配的末尾到串末尾之间的文本。

flags参数包含零个或多个改变函数行为的单字母标记。i表示进行大小写无关的匹配,g表示替换每一个匹配的子字符串而不仅仅是第一个。

返回值类型:setof text

示例:

123456
SELECT regexp_split_to_table('hello world', E'\\s+'); regexp_split_to_table----------------------- hello world(2 rows)

如果没有子查询,当regexp_split_to_table函数没有匹配上时,不会输出表中的数据。这通常不是所需的返回结果,应避免这种写法。

 1 2 3 4 5 6 7 8 9101112131415
SELECT * FROM tab; c1  | c2  -----+----- dws |(1 row)SELECT c1, regexp_split_to_table(c2, E'\\s+') FROM tab; c1 | regexp_split_to_table ----+-----------------------(0 rows)SELECT c1, (select regexp_split_to_table(c2, E'\\s+')) FROM tab; c1  | regexp_split_to_table -----+----------------------- dws | 
support.huaweicloud.com/sqlreference-dws/dws_06_0030.html
推荐文章
提示

您即将访问非华为云网站,请注意账号财产安全