这里以删除字符串中的元音字符为例,
方法一:用到translate函数来实现
sql如下:
select translate(‘Abcdefghij’, ’1AEIOUaeiou’, ’1’) from dual
结果为:
bcdfghi
- 函数用法
TRANSLATE(string,from_str,to_str)
2.说明
会将from_str中的每个字符替换为to_str中相应的字符,
如果左右到右不能一一对应,则视为空值,
如上所示,1对应1,A对应空值(将A替换为空值即剔除掉A),E对应空值,以此类推......
关于值1的问题解释
由于to_str不能为空,否则得到的结果会为空,如下sql
select translate(‘Abcdefghij’, ’AEIOUaeiou’, ’’) from dual
结果为空
因此我们设to_str为1,且给from_to中加上同样的值
方法二:用正则函数regexp_replace实现
Sql如下:
select regexp_replace(‘Abcdefghij’,’[aeiouAEIOU]’) from dual
结果为:
bcdfghi