ORACLE数据库中怎么求除数字、字母之外的非中文

网络编程 2021-07-05 10:07www.168986.cn编程入门
最近使用oracle数据库做一个进销存项目,其中有一需求是ORACLE数据库中求除数字、字母之外的非中文字符的正则表达式,当时还真是难住了,正则表达式好久没用了,后来通过上网搜了下相关资料,狼蚁网站SEO优化把具体具体解决方案分享给大家,以供那些需要的朋友参考

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

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

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

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

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

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

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

asdfsad123234我w是e中国人一人

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

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by