sql - 用于验证特定数字的正则表达式

标签 sql json oracle

如何使用 REGEXP 在数组中搜索特定数字? 我有一个数组,需要验证它是否有特定的数字。
例如:[5,2,1,4,6,19] 我正在寻找数字 1,但只是数字 1,而不是任何包含数字 1 的数字。< br/>


我必须这样做:

case when REGEXP_INSTR(JSON_QUERY(MY_JSON_COLUMN,'$.path') , '[[]{1}[1][,]')<>0
            or REGEXP_INSTR(JSON_QUERY(MY_JSON_COLUMN,'$.path') , '[,]{1}[1][,]{1}')<>0
            or REGEXP_INSTR(JSON_QUERY(MY_JSON_COLUMN,'$.path') , '[,]{1}[1][]]')<>0
            or REGEXP_INSTR(JSON_QUERY(MY_JSON_COLUMN,'$.path') , '[[]{1}[1][]]') <>0 
      then 'DIGIT_ONE' else 'NO_DIGIT_ONE' 
 end

还有更简单的吗?

最佳答案

你可以使用

(^|\D)1(\D|$)

这将搜索未包含其他数字的 1

参见 this regex demo .

详情

  • (^|\D) - 字符串或非数字的开头
  • 1 - 1 字符
  • (\D|$) - 非数字或字符串结尾。

关于sql - 用于验证特定数字的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66746724/

相关文章:

sql - 每个主键值都有某种 “different auto-increment indexes”

sql - 处理只有 30,000 行的 Excel 文件中的慢速 MSSQL 存储过程

javascript - 从 Json 渲染 DataTable,并修改其中一列

sql - 如果不存在则删除表空间

sql - 具有最大条件的 select 子句

Android:SQLite,如何从多个字段中获取?

android - 参数化 SQLite 查询的奇怪行为

Python,写东西到json

json - mochijson2 示例!

Oracle Deref 函数 : wrong numer or type of arguments