oracle利用正则表达式对字符串进行拆分

Posted 葫芦杯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle利用正则表达式对字符串进行拆分相关的知识,希望对你有一定的参考价值。

常规字符拆分方式

select REGEXP_SUBSTR(str, [^,]+, 1, LEVEL) STR
  from (select 11,12,13,14,15,16 str from dual)
CONNECT BY LEVEL <= REGEXP_COUNT(str, [^,]+);

 

使用特数字符拆分:

oracle文本中的换行符、回车符、制表符
制表符 chr(9)
换行符 chr(10)
回车符 chr(13)

换行符拆分示例:

with data_change as
(select REGEXP_SUBSTR(str, [^ || chr(10) || ]+, 1, LEVEL) STR
from (select A
B
C
D
E str
from dual)
CONNECT BY LEVEL <= REGEXP_COUNT(str, [^ || chr(10) || ]+))
select c.str from data_change c

 

以上是关于oracle利用正则表达式对字符串进行拆分的主要内容,如果未能解决你的问题,请参考以下文章

使用正则表达式拆分字符串值

如何利用oracle正则表达式去除字段中含有的汉字

Python正则表达式拆分但保留某些字符以进行拆分

正则表达式基于空格引号和括号进行拆分

(Oracle) SQL 中的正则表达式将日期/时间拆分为单独的日期和时间列

C# 正则表达式拆分为 Java 模式拆分