gpt4 book ai didi

c# - 数字之间带有连字符的正则表达式

转载 作者:行者123 更新时间:2023-11-30 16:53:53 25 4
gpt4 key购买 nike

我必须检查用户输入的字符串是否为特定格式,例如:

123-1234-1234567-1

即前 3 位数字后是一个连字符,然后是 4 位数字后是另一个连字符,七位数字后是连字符,然后是单个数字。

我使用了下面的正则表达式

@"^\(?([0-9]{3})\)?[-. ]?([0-9]{4})[-. ]?([0-9]{7})[-. ]?([0-9]{1})$"

它对上面的表达式工作正常,但它也会传递没有 - 的表达式

eg:-  123-1234-1234567-1 //pass
123123412345671 //also getting pass.

第二个字符串应该失败。我应该在正则表达式中做些什么改变才能达到同样的效果?

最佳答案

您可以简单地使用:

^\d{3}-\d{4}-\d{7}-\d$

如果你想允许点和空格也作为分隔符,那么使用:

^\d{3}[-. ]\d{4}[-. ]\d{7}[-. ]\d$

关于c# - 数字之间带有连字符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30962102/

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