oracle常用函数 oracle中有没有一个函数可以判断一个字符串中是否包含数字?
oracle中有没有一个函数可以判断一个字符串中是否包含数字?
使用 REGEXP_INSTR 函数, 可以实现这个 功能. 下面是例子:SQL> select * from test_reg_substrA-----------------------------------ABC123XYZABC123XYZ456找数字SQL> SELECT 2 REGEXP_INSTR (a,"[0-9] ") AS A 3 FROM 4 test_reg_substr A---------- 4 4 0也就是 结果返回值 大于0 的, 就是包含数字了.
oracle有没有判断一个字符串都是数字的函数呀?
额,正好以前写过一个
oracle本身没有,得自定义一个函数
create or replace function isNumber(p in varchar2)
return number
is
result number
begin
result := to_number(p)
return 1
exception
when VALUE_ERROR then return 0
end
调用
select isNumber("abc123") from dual
或者
select isNumber("123") from dual
返回值为1,说明是数字,返回值是0,说明里边包含非数字的字符
oraclesql正则regexp_like如何包含特定字符串的问题?
用 regexp_like这个函数来解决,正则表达式为:[[:punct:]] 这个正则可以找出任何标点符号。
查询value中包含任何标点符号的记录如下:
select * from xxx where regexp_like(value,"[[:punct:]] ")
POSIX 正则表达式由标准的元字符(metacharacters)所构成: "$" 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 "n" 或 "r"。 "?" 匹配前面的子表达式零次或一次。 "*" 匹配前面的子表达式零次或多次。
oracle常用函数 oracle判断含有特殊字符 oracle中包含某个字符串
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。