任何人都可以给我一个must be loger than {n} and must include at least 2 digit integer
我现在有以下内容,但它只验证了长度;
<asp:RegularExpressionValidator ID="myTxtVal"
runat="server" ControlToValidate="myTxt"
ErrorMessage="Input Is Too Short" ValidationExpression=".{15}.*" />
答案 0 :(得分:1)
<asp:RegularExpressionValidator ID="myTxtVal"
runat="server" ControlToValidate="myTxt"
ErrorMessage="Input Is Too Short" ValidationExpression="^(?=.*?\d{2}).{15}" />
编辑:固定为2位整数。与'有2位数'不一样...... ;-)
它使用前瞻来验证一行中至少有两个数字,然后.{15}
部分匹配15个字符。它不需要匹配字符串的其余部分,因此我删除了.*
。
答案 1 :(得分:1)
那样的东西?
^(?=.*\d{2}).{4,}$
第一个构造(?=.*\d{2})
是向前看,它会检查字符串中的某个位置是否连续2位数。 (我现在不确定这是否是你需要的)
第二部分检查.{4,}
检查字符串的长度至少为4个字符。
^
将模式锚定到字符串的开头
$
将模式锚定到字符串的末尾
答案 2 :(得分:0)
另一种方法,纯粹是为了您的兴趣:
/^(.|()\d\d){N-1}\2/
这适用于正则表达式,如果其引用的第N个组无法匹配,则\N
的反向引用无法匹配。如果第二个组匹配,表达式只能成功匹配,而这只能在\ d \ d匹配时才会发生。例如,N = 15:
/^(.|()\d\d){14}\2/