日期:2014-05-16  浏览次数:21108 次

ORACLE 用正则表达式如何匹配回车换行?

 不要告诉我用\n或\r,网上都这么说,用了你就知道,这不行!
\x0a 也不行,实践中不行.
目前是用 [^\w\t ],来临时匹配空格,但是很郁闷,不严谨
求高手回答!


------解决方案--------------------
楼主试试这样行不
 SELECT REPLACE (
REGEXP_REPLACE (
REPLACE ('test ' || CHR (13) || CHR (10) || 'string',
' ',
'[blank]'),
'[[:space:]]*',
''
),
'[blank]',
' '
)
FROM DUAL
------解决方案--------------------
SQL code

replace('字段',chr(10),'$')
--把回车换行 替换成 $ 后再匹配 $.  这里的$只是随便举例,你只需要弄一个你业务中出现不了的字符就行了。

------解决方案--------------------
replace('字段',chr(37),'$')
--把回车换行 替换成 $ 后再匹配 $. 这里的$只是随便举例,你只需要弄一个你业务中出现不了的字符就行了。