带有RadMaskedTextBox邮政编码的正则表达式验证器,带掩码##### - #### 5或9(C#,asp.net)

时间:2018-06-06 10:48:28

标签: regex validation zip zipcode radmaskedtextbox

如何使用带有##### - ####掩码和asp RegEx验证器的邮政编码的RadMaskedTextBox字段?正则表达式表现得很有趣而且不能正常工作......?

我只想要这些有效的条目:

55555

55555-5555

1 个答案:

答案 0 :(得分:2)

我已经找到了问题....验证器正在尝试验证文字字符和提示字符。

这是如何将asp regex验证器与带有##### - ####掩码的telerik RadMaskedTextBox一起使用,并且能够接受5个数字或9个数字。

对我有用的正则表达式是:^ \ d {5} - ?(?:_ {4})?(?:[ - \ s]?\ d {4})?$

<asp:RegularExpressionValidator ID="valRegexZip" runat="server" ErrorMessage="Must be valid!" ControlToValidate="txtZip" SetFocusOnError="true" Display="Dynamic" ValidationExpression="^\d{5}-?(?:_{4})?(?:[-\s]?\d{4})?$"  ValidationGroup="valGroupStep1" ></asp:RegularExpressionValidator>

我遇到了掩码问题,因为验证器试图验证&#34; 55555 -____&#34;字面意思是破折号和下划线。此验证器将此考虑在内(数据仅作为&#34; 55555和#34传递)

此外,您可以通过关闭屏蔽文本框的prompt char属性来使用其他正则表达式。

希望这有助于节省时间!