Oracle如何使用将一个字符里的字母去掉?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle如何使用将一个字符里的字母去掉?相关的知识,希望对你有一定的参考价值。

例如 张三AB,处理后得到的结果是张三,但是字符里的字母是不固定的,及有可能是张三CH,也有可能是张三PPPP等等,replace函数每次只能替换一个字母,太慢

Oracle使用函数将一个字符里的字母去掉:
select case when regexp_like(字段名,\'.([a-z]+|[A-Z])\') then \'包含字母\' else \'不包含字母\' end
from 表名字

正则表达式函数:regexp_like
关键的参数是第二个:\'.([a-z]+|[A-Z])\'其中.表示匹配任何单字符,换行符除外
[a-z]是小写字母|或[A-Z]大写字母
参考技术A 有没有可能是张A三B?如果是这样的话,那么你还真的只能一个一个替换。如果都是类似 张三AB这种,那么你可以用正则里面有一个REGEXP_INSTR,你可以从第一位截取,用前面的函数定义找到第一个字母位置,然后长度减1,再用SUBSTR截取,就ok了。

SQLServer去掉括号及括号里的内容

参考技术A 今日夏某又给我布置作业了,sqlserver如何去掉某个字段括号及括号里的内容
示例:

其中
STUFF 函数将字符串插入到另一个字符串中。 它从第一个字符串的开始位置删除指定长度的字符;然后将第二个字符串插入到第一个字符串的开始位置。

charindex函数会在第二个字符表达式中搜索一个字符表达式,这将返回第一个表达式(如果发现存在)的开始位置,返回类型是整形。

以上是关于Oracle如何使用将一个字符里的字母去掉?的主要内容,如果未能解决你的问题,请参考以下文章

把一个字符串里的所有数字去掉.只留下字母

oracle 如何将一个字段里的值拆分为多个值显示出来

SQLServer去掉括号及括号里的内容

js如何去掉字符串中的某串字符

python字符串如何去掉英文字母以外的字符

python字符串如何去掉英文字母以外的字符