ORACLE数据库中怎么求除数字、字母之外的非中文字符的正则表达式

前端技术 2023/09/05 PHP

最近做项目,有这样一需求:ORACLE数据库中求除数字、字母之外的非中文字符的正则表达式
如有如下字段,需将其中除字母、数字、汉字外的其他所有字符替换为空
\'asdfsad ,,;)()!@123234#$%^&*(我w 是e ? 中国人。./\\[]::‘\'“”一人\'

最终得到值:asdfsad123234我是中国人一人

select FN_REG_REPLACEOTHER(\'asdfsad ,,;)()!@#$%^&*(我是?中国人。./\\[]::‘\'“”一人\',\'需要的正则表达式,\'\') from dual;

谢谢。以下答案就勿跟贴:
(\\s)|(\\,)|(\\,)|(\\.)|(\\。)|(\\:)|(\\:)|(\\;)|(\\;)|(\\))|(\\))|(\\()|(\\))|(\\()|(\\‘)|(\\\')|(\\\'\')|(\\\")|(\\“)|(\\”)|(\\[)|(\\]|(\\!)|(\\!)|(\\@)|(\\#)|(\\%)|(\\%)|(\\^)|(\\&)|(\\*)|(\\¥)|(\\$)|(\\/)|(\\\\)|(\\?)|(\\?))

------解决方案--------------------

select regexp_replace(\'asdfsad ,,;)()!@123234#$%^&*(我w 是e ? 中国人。./\\[]::‘\'“”一人\'
,\'[[:punct:]|[:blank:]|[:space:]|[:cntrl:]]\',\'\') 
from dual
;

REGEXP_REPLACE(\'ASDFSAD,,;)
-----------------------------

asdfsad123234我w是e中国人一人

好了,本文的内容就到此为止了,希望对大家有用。

本文地址:https://www.stayed.cn/item/12012

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。