【发布时间】:2016-06-18 19:59:29
【问题描述】:
我有一个文本框,要求它是五个数字字符后跟 3 个字母,这将与下拉列表中选择的内容相匹配。这是我检查的方式:
protected void ddlLegalEntity_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlLegalEntity.SelectedItem.Text == "FID")
{
RegularExpressionValidator1.ValidationExpression = "^[0-9]{5}(FID)$";
}
else if (ddlLegalEntity.SelectedItem.Text == "FLM")
{
RegularExpressionValidator1.ValidationExpression = "^[0-9]{5}(FLM)$";
}
else if (ddlLegalEntity.SelectedItem.Text == "FOF")
{
RegularExpressionValidator1.ValidationExpression = "^[0-9]{5}(FOF)$";
}
然后如果.......
因此,如果在 ddlLegalEntity 中选择 FLM,则文本框必须等于五个数字,后跟 FLM。
比如……
13423FLM
56543FLM
这段代码运行良好,但我觉得必须有更简单的方法来编写代码。也许我错了,这是最简单的方法,但我只是好奇。
【问题讨论】:
-
正则表达式的模式是一个字符串。所以使用@"\d{5}" + ddlLegalEntity.SelectedItem.Text