C# 正则表达式校验器
我有电话号码的文本框。我需要验证它。我的要求是C# 正则表达式校验器,c#,asp.net,regex,visual-studio,C#,Asp.net,Regex,Visual Studio,我有电话号码的文本框。我需要验证它。我的要求是 只取大于10位数的数字 以(,),-,等符号为例 有人能帮我吗?我试过了 ^[\d{10,14} +\s +\( +\)-]+$ 但是不起作用。你可以看看有助于你建立这样的表达式。你可以看看有助于你建立这样的表达式。你没有说你的正则表达式有什么问题(为什么它没有按预期工作),但我猜问题是它匹配的远远超过了它应该匹配的范围。也就是说,它将匹配集合中的一个或多个字符(而不仅仅是10到14个字符) 我认为你的错误在于你在工作中投入太多。你已经有了3次+
^[\d{10,14} +\s +\( +\)-]+$
但是不起作用。你可以看看有助于你建立这样的表达式。你可以看看有助于你建立这样的表达式。你没有说你的正则表达式有什么问题(为什么它没有按预期工作),但我猜问题是它匹配的远远超过了它应该匹配的范围。也就是说,它将匹配集合中的一个或多个字符(而不仅仅是10到14个字符) 我认为你的错误在于你在工作中投入太多。你已经有了3次
+
符号,看起来你也试图在集合中使用量词,这是不允许的。字符集相当于单个字符。因此,[abc]
相当于a | b | c
我假设您希望输入介于10到14个数字之间,同时仍然允许以下字符中的任意数字(零或更多):
+()-,
正如其他一些人所建议的,您可以将所需的字符放在一个集合中,然后像这样在它后面指定量词:^[0-9()-,+]{10,14}$
。这几乎可以让你达到目的。唯一的问题是,它将允许这些字符中的10到14个,因此它将成功匹配:
,,,,,++()---
这显然是你不想要的(是吗?)
因此,为了更好地解决这个问题,您需要更具体地说明什么是允许的,以及在主题中的什么地方是允许的。因为我不知道你到底想配什么,我不能带你走得更远
希望我在这里提供的信息足以让你开始,如果你有更多的问题。。。好吧,这就是我们来这里的目的,所以赶紧问吧
为了帮助您学习,以下是一些您可能会发现有用的资源(这是可用资源的一小部分,请继续搜索您自己):
测试工具
- (红宝石)
- (dotnet)
+
符号,看起来你也试图在集合中使用量词,这是不允许的。字符集相当于单个字符。因此,[abc]
相当于a | b | c
我假设您希望输入介于10到14个数字之间,同时仍然允许以下字符中的任意数字(零或更多):
+()-,
正如其他一些人所建议的,您可以将所需的字符放在一个集合中,然后像这样在它后面指定量词:^[0-9()-,+]{10,14}$
。这几乎可以让你达到目的。唯一的问题是,它将允许这些字符中的10到14个,因此它将成功匹配:
,,,,,++()---
这显然是你不想要的(是吗?)
因此,为了更好地解决这个问题,您需要更具体地说明什么是允许的,以及在主题中的什么地方是允许的。因为我不知道你到底想配什么,我不能带你走得更远
希望我在这里提供的信息足以让你开始,如果你有更多的问题。。。好吧,这就是我们来这里的目的,所以赶紧问吧
为了帮助您学习,以下是一些您可能会发现有用的资源(这是可用资源的一小部分,请继续搜索您自己):
测试工具
- (红宝石)
- (dotnet)