gpt4 book ai didi

java - 具有捕获组问题的正则表达式量词

转载 作者:行者123 更新时间:2023-12-01 08:47:58 26 4
gpt4 key购买 nike

怎么了?

我正在尝试让一些正则表达式起作用,但我面临着一些“奇怪”(?)的行为。

我需要一个正则表达式来验证以下内容:

  • 只有数字(完全没有空格)
  • 以 10 或 11 开头
  • 必须为 12 个字符

在这方面工作了一段时间后,我坚持了下来:

^(10|11)[0-9]{10}$

它似乎按预期工作,但我不满意,因为乍一看它具有误导性。最多必须为 12 个字符,但它最多验证 10 个 +“开头为”字符。

有人有更好的解决方案或愿意解释为什么会发生这种情况吗?

提前致谢(:

最佳答案

它没有按预期工作。
{10} 表示您的情况正好是 10 位数字。
您可以使用 {0,10}匹配 0 到 10 次,尽可能多的次数,根据需要返回

至于误导部分 - 它是主观的,如果数字必须以 10 或 11 开头,那么它必须是 2 位数字长,并且您可以允许不超过 10 位数字

关于java - 具有捕获组问题的正则表达式量词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42561271/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com