2011-02-17 39 views
0

嗨 我想验证我的ASP.NET中使用正则表达式验证器的文本框。如何在ASP.NET中使用正则表达式验证器验证文本框

我的文本框应该只带数字和特殊字符。

什么是我可以使用的验证表达式?

请帮帮我。

+0

嗨,你的网络形式如何看起来像迄今为止? – 2011-02-17 09:38:00

+0

什么是特殊字符? – Tim 2011-02-17 09:41:00

+0

事情是我的文本框将采取电话号码所以Phno有包含几个spl字符..like ..()和 - 与numarics一起,所以我需要数字和Spl字符只有我的文本框必须采取请试图帮助我.. – santhosh 2011-02-17 09:44:46

回答

2

只有数字可以进入到该文本框

我们可以使用正则表达式验证此: 在验证表达式属性保持^ \ d + $。

<asp:TextBox ID="TextBox1" runat="server" 
    Style="z-index: 100; left: 259px; position: absolute; top: 283px" 
    ValidationGroup="check"></asp:TextBox> 

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
    ControlToValidate="TextBox1" ErrorMessage="Please Enter Only Numbers" 
    Style="z-index: 101; left: 424px; position: absolute; top: 285px" 
    ValidationExpression="^\d+$" ValidationGroup="check"> 
</asp:RegularExpressionValidator> 
1

像一个有效的电话号码中的表达(999)999-9999将是:

^[\d\s\(\)\-]+$ 

这意味着它拥有的0-9位数(点)括号中的负和空间。它们都可能发生一次或多次,因此(()3-4 4)也是正确的。但既然你希望spl字符在任何地方都能发生,这将是合适的。

也许使用System.ComponentModel.DataAnnotations命名空间中的属性验证。该物业是这样的:

[RegularExpression(@"^[\d\s\(\)\-]+$")] 
public string NumbersAndSpecialChars { get; set; } 

一个ASP-控制使用表达式看起来像这样(像罗布回答):

<asp:TextBox ID="TextBox1" runat="server" 
Style="z-index: 100; left: 259px; position: absolute; top: 283px" 
ValidationGroup="check"></asp:TextBox> 

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
ControlToValidate="TextBox1" ErrorMessage="You must enter a phone number in the form of (999) 999-9999." 
Style="z-index: 101; left: 424px; position: absolute; top: 285px" 
ValidationExpression="^[\d\s\(\)\-]+$" ValidationGroup="check"/> 
0

尝试这种模式[-+\d()]+。我认为+也包括有时在电话号码