簡體   English   中英

MVC 4 - 正則表達式驗證 - 為什么這不起作用?

[英]MVC 4 - Regular Expression Validation - Why is this not working?

我在MVC 4 View上有一個字段,需要正則表達式驗證。 我試圖限制進入字符'A'到'Z'(不區分大小寫)。

我的C#屬性如下所示:

   /// <summary>
    /// Gets or sets the Revision property
    /// </summary>
    [DataMember]
    [Required]
    [RegularExpression("(/^[a-z]+$/i)", ErrorMessage = "Please enter a character between 'A' and 'Z'")]
    public string Revision { get; set; }

生成的HTML如下所示:

    <div class="formEditControl">
        <input Style="width:30px;" data-val="true" data-val-regex="Please enter a character between &#39;A&#39; and &#39;Z&#39;" data-val-regex-pattern="(/^[a-z]+$/i)" data-val-required="The Revision field is required." id="Revision" name="Revision" type="text" value="" />
        <span class="field-validation-valid" data-valmsg-for="Revision" data-valmsg-replace="true"></span>
    </div>

但是當我執行它時,我在有效數據輸入時收到以下錯誤:

在此輸入圖像描述

我對MVC 4或RegEx沒有太多經驗,所以我不清楚為什么這不起作用。

你是正則表達式只允許使用小寫字符。 因此,當您輸入“D”時,它會響應錯誤。 對於所有字母,不區分大小寫,您的正則表達式應該如下所示^[a-zA-Z]*$ 試試吧,它應該工作。

你有(/開頭,但這會產生分隔符() 。我不確定你是否甚至需要分隔符。刪除() 。如果這不起作用,請使用

^[a-zA-Z]+$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM