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.