ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 判断字符串还是数字的方法

判断字符串还是数字的方法

原创 Linux操作系统 作者:逐水流 时间:2008-03-17 14:03:04 0 删除 编辑

以前都是用translate来实现数字还是字符串的判断,显得笨拙而且并不是完全没有漏洞。现在发现Oracle的正则表达式可以很方便的实现这一功能。

例如判断浮点数:
Select * From (
Select '13423423' t From dual
Union
Select '-13423423.22' From dual
Union
Select '13423423a22' From dual
Union
Select 'afafdaf' From dual)
WHERE REGEXP_LIKE(t, '^(-{0,1}|\+{0,1})[0-9]+(\.{0,1}[0-9]+)$')

判断纯数字串:
Select * From (
Select '01' t From dual
Union
Select '13423423' From dual
Union
Select '-13423423.22' From dual
Union
Select '13423423a22' From dual
Union
Select 'afafdaf' From dual)
WHERE REGEXP_LIKE(t, '^([0-9]+)$')

有返回值函数:
Select REGEXP_INSTR('34334534', '^([0-9]+)$') From dual

改用正则表达式方便而且灵活多变了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13490529/viewspace-207516/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 翻桌的原因
请登录后发表评论 登录
全部评论

注册时间:2008-03-15

  • 博文量
    17
  • 访问量
    20869