【发布时间】:2021-06-18 08:07:33
【问题描述】:
要匹配这些示例:
1-10-1
1-7-3
10-8-5
1-7-14
11-10-12
这个正则表达式有效:
^[\\d]{1,2}-[\\d]{1,2}-[\\d]{1,2}$
这怎么能写成只匹配“[\d]{1,2}-?”之类的东西三 (n) 次?
【问题讨论】:
-
我想一个非常常见的结构是使用非捕获组 n 次。类似
^\d\d?(?:-\d\d?){2}$ -
谢谢!它在第一次尝试时有效。我得到了这个 "^(?:[\\d]{1,2}-?){3}" (或者这个适用于 PCRE "^(?:[\\d]{1,2}+- ?){3}" 之前寻求帮助,但它失败了,我不明白为什么你的工作完美。你介意帮我理解吗?
-
我建议您不要使用这种(您的尝试)构造,因为您将连字符设为可选,本质上允许像“123”或“123456”这样的字符串也是有效的。其次,你的字符类结构最好写成
\d,它是 0-9 范围内数字的简写。不知道你为什么试图逃避反斜杠。也许这与 kupernetes 有关,我对此一无所知 =) -
是的,转义的
\d是我能够使其与 kubernetes 舵图渲染一起工作的唯一方法。非常感谢您的解释!!!
标签: regex kubernetes-helm sprig-template-functions