Oracle11g 当字符串中有\n时,如何使用REGEXP\u SUBSTR?

Oracle11g 当字符串中有\n时,如何使用REGEXP\u SUBSTR?,oracle11g,Oracle11g,我有一个带“\n”且不带引号的字符串,希望了解REGEXP\u SUBSTR的语法 e、 g。 我的绳子是 “a\nnbc” 当我尝试运行命令时 SELECT REGEXP_SUBSTR ('a\nnbc', '[^\n]+', 1, LEVEL ) AS myelement FROM DUAL

我有一个带“\n”且不带引号的字符串,希望了解REGEXP\u SUBSTR的语法

e、 g。 我的绳子是

“a\nnbc”

当我尝试运行命令时

SELECT REGEXP_SUBSTR ('a\nnbc',
                      '[^\n]+',
                      1,
                      LEVEL
                      )
          AS myelement
  FROM DUAL
此处按级别连接


LEVEL如果字符串字面上有
\n
,则换行符是两个字符,并且不能在类中对其求反,因为它将单独处理每个字符。此解决方案不正确,因为它将结果作为nnnbc给出。只需删除“\n”,并期望结果是nbc
LEVEL <= REGEXP_COUNT ('a\nnbc', '\n')+1 
SELECT REGEXP_SUBSTR ('a\nnnbc',
                      '[^\]+',
                      1,level)
          AS myelement
  FROM DUAL
  CONNECT BY LEVEL <= REGEXP_COUNT ('a\nnbc', '\n',1) AND PRIOR SYS_GUID () IS NOT NULL;