2016-12-15 69 views
1

特定值的限制,我想包括限制下面我正則表達式,從而使nameNAMENameNaMe等無法通過驗證具有以下REV:包括正則表達式驗證

<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="tbAttColName" 
        CssClass="failureNotification" ErrorMessage="Column can only contain alpha numeric and spaces, and must start with a letter" 
        ValidationGroup="AddColumn" Text="*" ValidationExpression="^[A-Za-z][0-9A-Za-z ]*$" Display="Dynamic" /> 
有效輸入的

實例:

nam 
nam1 
name1 
theName 
N1ame 
helloname 
whatisyourname 

無效的輸入的實例:

1name 
Name 
NAME 
NaMe 
naME 
+2

你能提供什麼,不能接受一些更多的信息?要查找名稱,無論大小寫:'[Nn] [Aa] [Mm] [Ee]' – Neal

+0

是'nam'是否是有效的輸入?並提供一些有效的輸入 –

+0

我發佈的正則表達式不允許包含'Name'的字符串,那麼您需要什麼? –

回答

1

要允許任何值滿足你的模式排除一定的值(即等於全字符串)。這意味着你需要在開始時添加一個負向前視圖,並且它的模式應該在字符串末尾用$固定。

^(?![Nn][Aa][Mm][Ee]$)[A-Za-z][A-Za-z0-9 ]*$ 
^^^^^^^^^^^^^^^^^^^^^ 

regex demo

詳細

  • ^ - 字符串的開始
  • (?![Nn][Aa][Mm][Ee]$) - 整個字符串不能等於name字符串(不區分大小寫)
  • [A-Za-z] - 一個ASCII字母
  • [A-Za-z0-9 ]* - 零個或多個ASCII字母,數字或空格
  • $ - 字符串結尾。
+0

Cheers W ........................ – John