我正在尝试实现一个正则表达式,只允许连字符'-'
后的一个或两个数字,但它无法正常工作。它允许在'-'
请建议我ExtJS
Ext.apply(Ext.form.VTypes, {
hyphenText: "Number and hyphen",
hyphenMask: /[\d\-]/,
hyphenRe: /^\d+-\d{1,2}$/,
hyphen: function(v){
return Ext.form.VTypes.hyphenRe.test(v);
}
});
//Input Field for Issue no
var <portlet:namespace/>issueNoField = new Ext.form.TextField({
fieldLabel: 'Issue No',
width: 120,
valueField:'IssNo',
vtype: 'hyphen'
});
这仅适用于允许数字和-
的限制。但它最多只允许1
后2
到-
个数字。
我的正则表达式有问题吗? hyphenRe: /^\d+-\d{1,2}$/,
答案 0 :(得分:1)
可能是它希望输入与您指定的正则表达式完全匹配。此网站has a zip code example也限制了连字符后面的数字。
它使用Else语句让表单函数接受一个模式或另一个模式选项。
用于5-4格式的正则表达式是:“^ \ d {5} - \ d {4} $”
希望这有点帮助。
答案 1 :(得分:0)
Ext.form.VTypes.hyphenRe.test(v)
应该进行检查,不允许用户在第一个位置输入两个-
。
你的建议是检查场上是否有-
完全不同的球赛。
hyphenRe
不知何故被调用。