【问题标题】:How do I use regex on Netezza to find integers?如何在 Netezza 上使用正则表达式来查找整数?
【发布时间】:2016-06-03 20:09:19
【问题描述】:

我正在使用以下函数来查找整数:where NZ_SQLEXTN..REGEXP_LIKE(d.ID, '[0-9]')

我刚刚注意到它没有拾取负数。当我做where NZ_SQLEXTN..REGEXP_LIKE(d.ID, '[^0-9]') 时,结果集都是负数。

如何在正则表达式中包含负数?

【问题讨论】:

  • 你可以不使用算术来找到它们吗?为什么是正则表达式?
  • -?[0-9]+ 是您要找的吗?我有点不清楚。regex101.com/r/nU6eJ6/1

标签: sql regex netezza nzsql


【解决方案1】:

您的正则表达式实际上只匹配 0-9 之间的数字,它不会匹配负数或浮点数。

如果你想支持更多的负面,你可以使用:

-?[0-9]+

如果你想支持负数和浮点数,那么你可以使用:

-?[0-9]+[.]?[0-9]*
or
-?\d+\.?\d*

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 2021-08-30
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多