【问题标题】:Mvc validation regular expression only numbers?Mvc验证正则表达式只有数字?
【发布时间】:2012-01-12 17:54:18
【问题描述】:

我尝试使用以下代码对 Mvc Web 应用中的联系人号码验证进行仅数字验证。

[RegularExpression(@"/(^\(\d{10})?)$/", ErrorMessage = "Please enter proper contact details.")]
[Required]
[Display(Name = "Contact No")]
public string ContactNo { get; set; }

但验证表达式不起作用。

对于联系电话,我只想接受数字。它可以是 10 位数的手机号码或固定电话号码。

【问题讨论】:

  • 联系电话应该是什么格式?它可以包含空格或破折号吗?
  • define "合适",有什么不合适的地方?
  • 它可能是可以有 10 位数的手机号码或手机号码的任何东西,所以我 jy=ust 需要将数字作为输入

标签: asp.net-mvc asp.net-mvc-3 model-view-controller


【解决方案1】:

如果除了数字之外没有任何限制,这应该适合:

[RegularExpression(@"^\d+$", ErrorMessage = "Please enter proper contact details.")]
[Required]
[Display(Name = "Contact No")]
public string ContactNo { get; set; }

【讨论】:

  • 所以基本上你使用正则表达式来确定字符串是否都是数字。
  • 谢谢先生,您的回答对我很有帮助
【解决方案2】:

/ / 是构建正则表达式文字对象的 javascript 方式。在 .NET 中你不应该使用它。

尝试以下方法:

@"^\((\d{10}?)\)$"

或者如果你想要 10 位数字:

@"^(\d{10})$"

【讨论】:

    【解决方案3】:

    这对我有用:

    [RegularExpression(@"^[0-9]{10}", ErrorMessage = "Please enter proper contact details.")] 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多