gpt4 book ai didi

asp.net - xVal 和正则表达式匹配

转载 作者:行者123 更新时间:2023-12-04 06:56:08 27 4
gpt4 key购买 nike

我正在使用 xVal 在 asp.net MVC 1.0 中验证我的表单

不知道为什么我的正则表达式没有正确验证。

  • 确实如此 不是 使用空值验证
  • 确实如此 不是 使用“1”、“12”、“123”或“1234”的值进行验证
  • 它使用以下值进行验证
    “12345”
  • 它使用“12345”的值进行验证
  • 它使用“12345 -”的值进行验证
  • 它以“12345 -1”的值进行验证
  • 它使用“12345 -12”的值进行验证...等

  • 对于邮政编码,我期望两种模式之一:
    1234512345 -1234
    这是我尝试过的两个正则表达式:
    (\d{5})((( -)(\d{4}))?)

    (\d{5})|(\d{5} -\d{4})

    这是我的 xVal 元数据类
    [MetadataType(typeof(TIDProfileMetadata))]
    public class TIDProfileStep
    {
    public class TIDProfileMetadata
    {
    [Required(ErrorMessage = " [Required] ")]
    [RegularExpression(@"(\d{5})|(\d{5} -\d{4})", ErrorMessage = " Invalid Zip ")]
    public string Zip { get; set; }
    }
    }

    这是我的aspx页面:
    <% Html.BeginForm("Edit", "Profile", FormMethod.Post); %>
    <table border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td>
    <h6>Zip:</h6>
    </td>
    <td>
    <%= Html.TextBox("Profile.Zip")%>
    </td>
    </tr>
    <tr>
    <td>
    <input type="submit"/>
    </td>
    </tr>
    </table>
    <% Html.EndForm(); %>

    <% Html.Telerik().ScriptRegistrar()
    .OnDocumentReady(() =>
    { %>
    <%= Html.ClientSideValidation<TIDProfileStep>("Profile").SuppressScriptTags() %>
    <% }); %>

    最佳答案

    您缺少开始和结束 anchor :

    ^\d{5}( -\d{4})?$

    如果没有这些,您将允许部分匹配。正则表达式匹配字符串 12345 -1来自 \d{5} : 12345 -1 ,并验证它。

    关于asp.net - xVal 和正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2548348/

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