关于oracle中换行符替换问题

raul2009 2013-04-24 09:19:40
首先说一下我的需求:
表A结构中有一个列是AAA,这是一个varchar2类型列。现在要把表A中的
所有记录中的AAA里面的[cr],[lf]换行符全部替换成[crlf],另外这个AAA中有
[cr],[lf],[crlf]三种混在的情况。

我现在的做法如下
Cursor cur_aaa is
Select * from A
Where A.AAA like ‘%’ || chr(10) || ‘%’
Or A.AAA like ‘%’ || chr(13) || ‘%’
然后遍历这个游标去更新,用replace替换。
这样是可以替换所有的cr和lf。但是如果AAA中只有[crlf]的话也被替换了,
现在请教各位能否有办法不把AAA中全是[crlf]作为替换对象。求高手指教。
...全文
562 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
raul2009 2013-05-17
  • 打赏
  • 举报
回复
各位,谢谢参与,虽没有满意答案,但是给大家参与分儿
善若止水 2013-04-27
  • 打赏
  • 举报
回复
一 先把表中[crlf]替换为'*' 二 执行你的操作 三 把'*'替换为[crlf]
zxsjh 2013-04-26
  • 打赏
  • 举报
回复
Select * from A Where A.AAA like ‘%’ || chr(10) || ‘%’ Or A.AAA like ‘%’ || chr(13) || ‘%’ minus Select * from A Where A.AAA like ‘%’ || chr(10)chr(13) || ‘%’ 楼主可以使用这个试试,这个应该会查出所有的cr和lf 但是不包含crlf
raul2009 2013-04-26
  • 打赏
  • 举报
回复
引用 6 楼 u010412956 的回复:
[quote=引用 4 楼 raul2009 的回复:] 楼上大哥请好好看看我的需求。 还请高手来帮忙
那得到的结果是什么?[/quote] 我想要的结果是把所有的cr和lf换行符全部替换成crlf,另外如果替换之前就都是crlf了那么就不替换了。 我就是想要这样的结果
u010412956 2013-04-24
  • 打赏
  • 举报
回复
引用 2 楼 raul2009 的回复:
引用 1 楼 u010412956 的回复:AAA里面的[cr],[lf]换行符全部替换成[crlf], 哪里有换行符? AAA是列名,每条记录中的AAA都有换行符 [cr]回车 [lf]换行 [crlf]回车换行
得到的结果是?? [crlf]回车换行 [crlf]回车换行
raul2009 2013-04-24
  • 打赏
  • 举报
回复
引用 1 楼 u010412956 的回复:
AAA里面的[cr],[lf]换行符全部替换成[crlf], 哪里有换行符?
AAA是列名,每条记录中的AAA都有换行符 [cr]回车 [lf]换行 [crlf]回车换行
u010412956 2013-04-24
  • 打赏
  • 举报
回复
AAA里面的[cr],[lf]换行符全部替换成[crlf], 哪里有换行符?
u010412956 2013-04-24
  • 打赏
  • 举报
回复
引用 4 楼 raul2009 的回复:
楼上大哥请好好看看我的需求。 还请高手来帮忙
那得到的结果是什么?
ben20062143 2013-04-24
  • 打赏
  • 举报
回复
可否变通下:在你做完第一步后,含有[crif]的列会被跟新为[crifcrif],然后你可以做第二步,把这种记录再repalce就行了
raul2009 2013-04-24
  • 打赏
  • 举报
回复
楼上大哥请好好看看我的需求。 还请高手来帮忙

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧