车辆编号文本框的正则表达式

时间:2012-06-06 07:03:01

标签: c# asp.net regex

我在asp.net detailsview中有一个文本框。 此文本框只能采用如下车辆编号:

ABG-999
ATG-9090
AB-122
B-9999
J-111
880099个
88221个

有人可以制作一个可以在文本框中应用的正则表达式吗?我希望使用只添加“ - ”符号,不允许像空格或句号那样。

修改-1

<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("bowzer_no") %>' ControlToValidate="TextBox1" />
<asp:RegularExpressionValidator ControlToValidate = "TextBox1" ID="RegularExpressionValidator1" runat="server" ErrorMessage="Invalid" ></asp:RegularExpressionValidator>

我不知道在ValidationExpression中输入什么来实现我的目标。

2 个答案:

答案 0 :(得分:4)

试试这个:

[0-9]{6,7}|[a-zA-Z]{1,3}-[0-9]{1,6}

第一部分(|之前)是仅数字代码(最小6位数,最多7位数)。 第二部分接受最小1个字符,最多3个字符在-之前和最小1位数,最多6个数字在-之后。

它应该适合你。

答案 1 :(得分:1)

这应该有效:

([a-zA-Z]+-)?\d{3,6}

您可以调整位数。我的例子预计最小值为3,最大值为6。