I came up with the following,
var rex = new Regex(@"^([AX](\d\d)+)");
but this matches X23H, A48B59,A48BA484646
How do I make sure it's a string starting with either 'A' or 'X' and then followed by two or more digits?
答案 0 :(得分:2)
使用n
可以完成某种模式的至少{n,}
。您可能还想标记字符串的结尾。尝试做:
var rex = new Regex(@"^([AX]\d{2,})$");
答案 1 :(得分:0)
您错过了end of line anchor($
):
var rex = new Regex(@"^([AX](\d\d)+)$");
这就是为什么你的表达式在开始时正确匹配,但是#34;抓取太多"最后。
答案 2 :(得分:0)
这应该可以正常工作...... 它采取的是' A'或者' X'作为第一个字符,后跟2个数字。
var rex = new Regex(@"^[AX]{1}\d{2}$");
您可以使用^和$来最好地满足您的要求以及regexOptions。