最近做項(xiàng)目,有這樣一需求:ORACLE數(shù)據(jù)庫(kù)中求除數(shù)字、字母之外的非中文字符的正則表達(dá)式
如有如下字段,需將其中除字母、數(shù)字、漢字外的其他所有字符替換為空
'asdfsad ,,;)()!@123234#$%^&*(我w 是e ? 中國(guó)人。./\[]::‘'“”一人'
最終得到值:asdfsad123234我是中國(guó)人一人
select FN_REG_REPLACEOTHER('asdfsad ,,;)()!@#$%^&*(我是?中國(guó)人。./\[]::‘'“”一人','需要的正則表達(dá)式,'') from dual;
謝謝。以下答案就勿跟貼:
(\s)|(\,)|(\,)|(\.)|(\。)|(\:)|(\:)|(\;)|(\;)|(\))|(\))|(\()|(\))|(\()|(\‘)|(\')|(\'')|(\")|(\“)|(\”)|(\[)|(\]|(\!)|(\!)|(\@)|(\#)|(\%)|(\%)|(\^)|(\&)|(\*)|(\¥)|(\$)|(\/)|(\\)|(\?)|(\?))
------解決方案--------------------
select regexp_replace('asdfsad ,,;)()!@123234#$%^&*(我w 是e ? 中國(guó)人。./\[]::‘'“”一人'
,'[[:punct:]|[:blank:]|[:space:]|[:cntrl:]]','')
from dual
;
REGEXP_REPLACE('ASDFSAD,,;)
-----------------------------
asdfsad123234我w是e中國(guó)人一人
好了,本文的內(nèi)容就到此為止了,希望對(duì)大家有用。