Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正则表达式校验器_C#_Asp.net_Regex_Visual Studio - Fatal编程技术网

C# 正则表达式校验器

C# 正则表达式校验器,c#,asp.net,regex,visual-studio,C#,Asp.net,Regex,Visual Studio,我有电话号码的文本框。我需要验证它。我的要求是 只取大于10位数的数字 以(,),-,等符号为例 有人能帮我吗?我试过了 ^[\d{10,14} +\s +\( +\)-]+$ 但是不起作用。你可以看看有助于你建立这样的表达式。你可以看看有助于你建立这样的表达式。你没有说你的正则表达式有什么问题(为什么它没有按预期工作),但我猜问题是它匹配的远远超过了它应该匹配的范围。也就是说,它将匹配集合中的一个或多个字符(而不仅仅是10到14个字符) 我认为你的错误在于你在工作中投入太多。你已经有了3次+

我有电话号码的文本框。我需要验证它。我的要求是

  • 只取大于10位数的数字
  • 以(,),-,等符号为例
  • 有人能帮我吗?我试过了

    ^[\d{10,14} +\s +\( +\)-]+$
    

    但是不起作用。

    你可以看看有助于你建立这样的表达式。

    你可以看看有助于你建立这样的表达式。

    你没有说你的正则表达式有什么问题(为什么它没有按预期工作),但我猜问题是它匹配的远远超过了它应该匹配的范围。也就是说,它将匹配集合中的一个或多个字符(而不仅仅是10到14个字符)

    我认为你的错误在于你在工作中投入太多。你已经有了3次
    +
    符号,看起来你也试图在集合中使用量词,这是不允许的。字符集相当于单个字符。因此,
    [abc]
    相当于
    a | b | c

    我假设您希望输入介于10到14个数字之间,同时仍然允许以下字符中的任意数字(零或更多):

    +()-,
    
    正如其他一些人所建议的,您可以将所需的字符放在一个集合中,然后像这样在它后面指定量词:
    ^[0-9()-,+]{10,14}$
    。这几乎可以让你达到目的。唯一的问题是,它将允许这些字符中的10到14个,因此它将成功匹配:

    ,,,,,++()---
    
    这显然是你不想要的(是吗?)

    因此,为了更好地解决这个问题,您需要更具体地说明什么是允许的,以及在主题中的什么地方是允许的。因为我不知道你到底想配什么,我不能带你走得更远

    希望我在这里提供的信息足以让你开始,如果你有更多的问题。。。好吧,这就是我们来这里的目的,所以赶紧问吧

    为了帮助您学习,以下是一些您可能会发现有用的资源(这是可用资源的一小部分,请继续搜索您自己):

    测试工具

    • (红宝石)
    • (dotnet)
    有用信息


    您还没有说您的正则表达式有什么问题(为什么它不能像预期的那样工作),但我猜问题在于它的匹配远远超出了它应该匹配的范围。也就是说,它将匹配集合中的一个或多个字符(而不仅仅是10到14个字符)

    我认为你的错误在于你在工作中投入太多。你已经有了3次
    +
    符号,看起来你也试图在集合中使用量词,这是不允许的。字符集相当于单个字符。因此,
    [abc]
    相当于
    a | b | c

    我假设您希望输入介于10到14个数字之间,同时仍然允许以下字符中的任意数字(零或更多):

    +()-,
    
    正如其他一些人所建议的,您可以将所需的字符放在一个集合中,然后像这样在它后面指定量词:
    ^[0-9()-,+]{10,14}$
    。这几乎可以让你达到目的。唯一的问题是,它将允许这些字符中的10到14个,因此它将成功匹配:

    ,,,,,++()---
    
    这显然是你不想要的(是吗?)

    因此,为了更好地解决这个问题,您需要更具体地说明什么是允许的,以及在主题中的什么地方是允许的。因为我不知道你到底想配什么,我不能带你走得更远

    希望我在这里提供的信息足以让你开始,如果你有更多的问题。。。好吧,这就是我们来这里的目的,所以赶紧问吧

    为了帮助您学习,以下是一些您可能会发现有用的资源(这是可用资源的一小部分,请继续搜索您自己):

    测试工具

    • (红宝石)
    • (dotnet)
    有用信息


    符号可以放在哪里?在任何地方只在3位数之后?1、、、、2345、(6)7890或(0)123456789有效吗?这些符号是可选的还是必需的?类似于:^[0-9()-]{10,14}$@ranjenanil-我只是想澄清一下您想要匹配的内容。我不确定这是否正确,但你是想匹配一个印度电话号码吗?例如,此处定义的格式@Inu..post您的评论作为答案..符号可以放在哪里?在任何地方只在3位数之后?1、、、、2345、(6)7890或(0)123456789有效吗?这些符号是可选的还是必需的?类似于:^[0-9()-]{10,14}$@ranjenanil-我只是想澄清一下您想要匹配的内容。我不确定这是否正确,但你是想匹配一个印度电话号码吗?例如,此处定义的格式@Inu..post您的评论作为答案。。