【问题标题】:REGEX_LIKE not selecting correct resultREGEXP_LIKE 没有选择正确的结果
【发布时间】:2016-09-01 05:11:29
【问题描述】:

我正在尝试从 varchar 列中选择以一个 + 字符开头并且后面只有数字的数字。我使用了regex_like 运算符,但它也在结果中选择了特殊字符。

预期的正确值:

+369
+6589445
+5896552

错误:

693
+4534dfgfgf#
+3435435*%

我试过了,

SELECT Column FROM Table WHERE REGEXP_LIKE(Column , '^[+][0-9]');

【问题讨论】:

    标签: regex oracle oracle11g oracle10g


    【解决方案1】:

    要选择以+ 开头的值,然后是 1 个或多个数字,请使用

    ^[+][0-9]+$
             ^^
    

    $ 将强制字符串结束边界,+ 将允许匹配 1 次或多次出现的加号量化结构([0-9] 字符类)。

    这是demo showing how this regex works

    【讨论】:

      猜你喜欢
      • 2017-07-03
      • 2017-05-12
      • 1970-01-01
      • 1970-01-01
      • 2015-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多