我正在尝试使用REGEXP_REPLACE
从varchar
中删除所有标点符号。我正在使用以下内容:
regexp_replace(d.NAME, [.,\/#!$%\^&\*;:{}=\-_`~()])
但这给了我一个错误,说:
如何解决此问题以删除所有标点符号?
最佳答案
首先,字符类中的破折号表示一个范围,除非是第一个或最后一个...所以将其放在此处:
[.,\/#!$%\^&\*;:{}=\_`~()-]
而且,您必须将其用引号引起来,并且大多数字符不需要转义:
regexp_replace(d.NAME, '[.,/#!$%^&*;:{}=_`~()-]')