Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cắt bỏ khoảng trắng (khoảng trắng dòng và tab mới) trong chuỗi trong Oracle

Nếu bạn có Oracle 10g, REGEXP_REPLACE khá linh hoạt.

Sử dụng chuỗi sau để kiểm tra:

chr(9) || 'Q   qwer' || chr(9) || chr(10) ||
chr(13) || 'qwerqwer     qwerty' || chr(9) || 
chr(10) || chr(13)

[[:space:]] sẽ xóa tất cả khoảng trắng và ([[:cntrl:]])|(^\t) regexp sẽ xóa các ký tự và tab không in được.

select
    tester,
    regexp_replace(tester, '(^[[:space:]]+)|([[:space:]]+$)',null)
            regexp_tester_1,
    regexp_replace(tester, '(^[[:cntrl:]^\t]+)|([[:cntrl:]^\t]+$)',null) 
            regexp_tester_2
from
    (
    select
        chr(9) || 'Q   qwer' || chr(9) || chr(10) ||
                chr(13) || 'qwerqwer     qwerty' || chr(9) || 
                chr(10) || chr(13) tester 
    from 
        dual
    )

Quay lại:

  • REGEXP_TESTER_1 :"Qqwerqwerqwerqwerty "
  • REGEXP_TESTER_2 :"Q qwerqwerqwer qwerty "

Hy vọng điều này có ích.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kết nối Oracle với SQL Server qua một kết nối an toàn

  2. Lặp lại cùng một biến liên kết nhiều lần khi sử dụng cấu trúc SQL động OPEN ... FOR trong Oracle PL / SQL

  3. Sử dụng cơ sở dữ liệu Oracle với xác thực biểu mẫu trong ứng dụng MVC3

  4. Danh sách các tham số NLS trong Cơ sở dữ liệu Oracle

  5. Chuyển đổi LONG sang varchar trong Oracle