gpt4 book ai didi

正则表达式:5 位递增顺序

转载 作者:行者123 更新时间:2023-12-03 14:29:14 25 4
gpt4 key购买 nike

我需要一个 5 位数字的正则表达式,如 12345 , 24579 , 34680 , 等等。
09 之后.

最佳答案

你可以试试(as seen on rubular.com)

^(?=\d{5}$)1?2?3?4?5?6?7?8?9?0?$

解释
  • ^$分别是字符串 anchor 的开始和结束
  • \d{5}是数字字符类\d完全重复{5}
  • (?=...)是积极的前瞻
  • ?在每个数字上使每个可选

  • 这个怎么运作
  • 首先我们使用lookahead断言锚定在字符串的开头,我们可以看到\d{5}直到字符串的结尾
  • 现在我们知道我们有 5 个数字,我们只需按照我们想要的顺序匹配数字,但让每个数字都是可选的
  • 断言确保我们有正确的位数

  • 正则表达式.info
  • Anchors , Character Classes , Finite Repetition , Lookarounds , 和 Optional


  • 推广技术

    假设我们需要匹配包含以下内容的字符串:
  • 1-3 个元音之间 [aeiou]
  • 并且元音必须按顺序出现

  • 那么模式是( as seen on rubular.com ):
    ^(?=[aeiou]{1,3}$)a?e?i?o?u?$

    同样,它的工作方式是:
  • 锚定在字符串的开头,我们首先断言(?=[aeiou]{1,3}$)
  • 所以正确的字符串中的字母,正确的长度
  • 然后我们按顺序测试每个字母,使每个字母都是可选的,直到字符串结束


  • 允许重复

    如果每个数字都可以重复,例如 11223是一场比赛,那么:
  • 而不是 ? (零或一)在每个数字上,
  • 我们使用 * (零次或多次重复)

  • 也就是说,模式是( as seen on rubular.com):
    ^(?=\d{5}$)1*2*3*4*5*6*7*8*9*0*$

    关于正则表达式:5 位递增顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3171671/

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