Oracle中的换行符是什么?

时间:2013-12-16 21:22:13

标签: java oracle oracle10g char newline

在sqldeveloper中运行,这会在结果

中提示一个空单元格
select regexp_replace(chr(10) || chr(13), '\n', 'New Line')
from dual

我希望这是'_New Line''New Line_',但我得到'__'(请注意,下划线在视觉上是一个空白区域。)

这也不起作用。

select regexp_replace(
  UNISTR('\000A') 
  || UNISTR('\000D')
  , '\n', 'New Line')
from dual

具体来说,我需要这个在java中工作。有一种方法将调用存储过程,该存储过程返回带有可能包含换行符的列的游标。从java方面我需要这个工作:

String or = resultset.getString("some_column"); // null check left for simplicity    
... = or.split("\\n"); 
... = or.split("\\r?\\n"); 

我正在使用regexp_replace进行测试,因为它应该做同样的事情。

1 个答案:

答案 0 :(得分:0)

您已使用换行符,chr(10)

select regexp_replace('<'||chr(10) || chr(13)||'>', chr(10), 'New Line')
from dual;

要替换换行符,请使用chr(13)

您不需要在此处使用正则表达式,而是可以使用普通replace()

SQL Fiddle添加了尖括号以更清晰地显示输出。