我想寫使用REGEXP_REPLACE函數替換特殊字符,如%的查詢替換%,!,*等。在文本中用/特殊字符。REGEXP替換/%
例如: '100%的結果' 到 '100 /%,結果'
'ABC * d' 爲 'ABC/* d'
任何人都可以請幫助。
我正在使用Oracle 11g。
我想寫使用REGEXP_REPLACE函數替換特殊字符,如%的查詢替換%,!,*等。在文本中用/特殊字符。REGEXP替換/%
例如: '100%的結果' 到 '100 /%,結果'
'ABC * d' 爲 'ABC/* d'
任何人都可以請幫助。
我正在使用Oracle 11g。
使用否定的字符類:
[^a-zA-Z0-9 ]
指任何字符,除了:從a
到z
0
到到Z
,REGEXP_REPLACE(text, '([^a-zA-Z0-9 ])', '/\1')
謝謝@Jerry。它可以工作,但是當文本包含&或'時,它不會。 – 2014-09-05 07:41:09
@WamglindCarmasaic我不知道它是如何不工作?它看起來對我工作正常,看到[更新的小提琴](http://www.sqlfiddle.com/#!4/4c0b97/1) – Jerry 2014-09-05 07:49:33
我正在使用TOAD,它不允許我插入'AB&D'' ASD」。它爲替代變量打開一個窗口。 – 2014-09-05 08:05:37
如何:
REGEXP_REPLACE(field, '%', '/%')
你爲什麼要使用'REGEXP_REPLACE'並不僅僅是'REPLACE'?另外,您是否查找過要使用的函數的語法?到目前爲止你嘗試過什麼,出了什麼問題? – GolezTrol 2014-09-03 11:18:59
那麼定義這些要求的人就是白癡,請原諒我的法語,或者你誤解了他們。 :) – GolezTrol 2014-09-03 11:23:05
「etc」是什麼意思?所有非字母數字字符? (即除字母,數字和空格之外的所有字符?) – Jerry 2014-09-03 12:58:35