【问题标题】:Regular expression for 6 digit numeric input. Every 6 digits input numbers must be separated by comma6 位数字输入的正则表达式。每 6 位输入的数字必须用逗号分隔
【发布时间】:2017-05-31 06:58:59
【问题描述】:

我的 UI 要求输入 User_ID 和 Supplier_ID,我想要一个字符串验证接受 Supplier_ID 的输入,如下所示:

1st scenario: 123456
2nd scenario: 123456,098765
3rd scenario: 123456,098765,345678

虽然它不应该接受如下输入:

1st scenario: Any number less than 6 digits like 123
2nd scenario: Any number more than 6 digits 1234567
3rd scenario: Inputs with comma in the end or even at the beginning - 123456,098765,345678, or ,098765,345678

我将在下面的查询中使用 Supplier_ID 的输入:

UPDATE ABC.Items
SET Crit_Limit = 'Y' 
WHERE User_ID = 'userID'         
AND Supplier_ID in (suppID)

变量 suppID 将携带来自 UI Supplier_ID 的输入,因此查询将如下所示:

UPDATE ABC.Items
SET Crit_Limit = 'Y' 
WHERE User_ID = '007'         
AND Supplier_ID in (123456,098765,345678)

无论如何,Supplier_ID 字段的长度为 6,并且必须是数字。

提前致谢!

【问题讨论】:

  • Java !=Javascript
  • 你尝试过什么?
  • 我试过这个 [0-9]{6} 但它只会将我限制为 6 位数,当我输入例如 123456,098765 时,程序会给我一个错误,因为它只会满足6 位输入。如何在表达式中使用逗号?
  • ([0-9]{6},)*[0-9]{6}
  • 非常感谢安迪!这个有效! :) ([0-9]{6},)*[0-9]{6} 谢谢!谢谢!

标签: javascript java angularjs db2 db2-400


【解决方案1】:

此模式匹配您的测试用例,并且适用于任意数量的 6 位数组,以逗号分隔。

^\d{6}(,\d{6})*$

【讨论】:

  • 你里面为什么有+
  • 谢谢,我试试看
  • 提高精神/^\d{6}(\,\d{6}){0,2}$/
  • 安迪,这是个错误!宁农,据我所知,这个正则表达式和 Raising Sprit 提供的正则表达式对于检查模式都是有效的。你能贴一个 pastebin 链接向我们展示你是如何使用它的吗?
  • 我在 hpoo 系统评估器中使用它 :) Andy 的一个工作正常.. 谢谢大家! :)
【解决方案2】:

将您的正则表达式创建为搜索组,并首先检查换行符后跟 6 位数字,然后检查 , 后跟 6 位数字组。

['123456',
  '123456,098765',
  '123456,098765,345678',
  '123456,0987s65,345678',
  '12345,098765,345678',
  '123456/098765'
]
.forEach(function(line) {
  if (line.toString().replace(/(^\d{6}(,\d{6})*)/gm, '').length < 1) {
    console.log(line, "matches");
  } else {
    console.log(line, "does not match");
  }
});

【讨论】:

    【解决方案3】:

    这就是你要找的表达方式

    ^\d{6}(\,\d{6}){0,2}$
    

    【讨论】:

    • 谢谢!让我尝试所有这些答案,然后回复大家。谢谢!
    • 对不起,条件不满足.. :(
    • 你在哪里执行它?如果您不在 javascript 中,您可能需要在开头和结尾删除 /
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 1970-01-01
    • 2011-10-12
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多