小编典典

在Oracle中的字符串中修剪空白(换行和制表符空间)

sql

我需要在Oracle查询中修剪换行符(从字符串的开头和结尾开始的Chr(13)和Chr(10)和Tab空间)。我了解到,在Oracle中没有简单的方法可以修剪多个字符。“修剪”功能仅修剪单个字符。如果我使用一个函数在循环中递归调用trim函数,将会降低性能。我听说regexp_replace可以匹配空格并将其删除。您能否指导一种可靠的方法来使用regexp_replace在String的开头和结尾修剪多个制表符或换行或它们的组合。如果还有其他方法,请指导我。


阅读 238

收藏
2021-04-15

共1个答案

小编典典

快速而肮脏的翻译功能如何?

这将删除string1中每个字符的所有出现:

SELECT translate(
           translate(
               translate(string1, CHR(10), '')
           , CHR(13), '')
       , CHR(09), '') as massaged
FROM BLAH;

Regexp_replace是一个选项,但是根据表达式的复杂程度,您可能会看到性能下降。

2021-04-15