我很难为0-15的数字输入组合正则表达式。
我试过这个表达式:
^([9]{1,1}|[0-1][0-5])$
<asp:FilteredTextBoxExtender ID="TMPFiltered" runat="server" FilterMode="ValidChars"
FilterType="Custom" ValidChars^([9]{1,1}|[0-1][0-5])$" TargetControlID="txtTMP" />
然而它允许的最大值高于15.我的语法在哪里不正确?感谢任何帮助。谢谢。
答案 0 :(得分:4)
试试这个:
^([0]?[1-9]|1[0-5])$
或尝试这个,如果你不想匹配“07”
^([1-9]|1[0-5])$
答案 1 :(得分:3)
正则表达式不是正确的解决方案,您应该尝试将字符串转换为int,如果成功,请确保结果在您想要的范围内。
话虽如此,这是一个应该有效的正则表达式:
^(1[0-5]?|[2-9])$
当前正则表达式的主要问题是锚点仅应用于交替的左侧,因此您将匹配正则表达式中任何位置匹配[0-1][0-5]
的字符串。您当前的正则表达式中也没有任何方法可以匹配2到8之间的数字。
答案 2 :(得分:2)
你几乎就在那里
您需要 ^([1-9]|1[0-5])$
我在您的正则表达式[9]{1,1}
到[1-9]
中所做的唯一更改..不需要{1,1}
,因为它已在[9]
中匹配了一次