如何在REGEXP_REPLACE中忽略短横线(-)符号?
解决方案
只需修改正则表达式的否定字符集,将短横线(-)加入允许保留的字符范围即可:
select REGEXP_REPLACE(ppa.name,'[^0-9A-Za-z-]','_') AS project_name
说明
原表达式[^0-9A-Za-z]会匹配所有非数字、非大小写字母的字符并替换为下划线。在字符集末尾添加-后,[^0-9A-Za-z-]会排除短横线,仅替换除数字、大小写字母、短横线之外的其他字符。
验证示例
输入字符串:PJ3456#3$4-6565
执行修改后的语句后,输出结果为:PJ3456_3_4-6565,完全符合需求。
内容的提问来源于stack exchange,提问作者chrtak
相关产品推荐
相关产品推荐

