1

我正在尝试构建一个正则表达式来验证输入是否是有效的航班代码。AA 有效的航班代码看起来像两个字符,然后是三个或四个数字。可以以零开始数字,但至少一个数字必须是 1-9。有效代码例如 DE1258、DE012、SK4589、fr0020 或 us0001

我尝试了以下解决方案,但它不起作用。

Regex RegexObj = new Regex(@"^[a-zA-Z]{2}$\d\d\d\d");
4

1 回答 1

2

以下正则表达式将做你想要的

^[a-zA-Z]{2}(?!0{4})\d{3,4}$

这有效的原因是 (!?0{4}) 是一个负前瞻。只有当子表达式不匹配时,正则表达式才会继续超过这一点。

于 2013-04-11T09:57:46.487 回答