JavaScript输入验证:数字和破折号
嗨,我正在尝试验证JavaScript中的输入。格式必须为:整数+破折号+整数。整数和破折号之间可以有空格,但整数必须是数字格式(不允许使用“e”),并且第一个数字小于第二个数字。例如:1-100,1-100,或1-100。我不熟悉正则表达式,但我觉得使用正则表达式应该更有效。有人能告诉我怎么做吗?谢谢 试试这样的方法:JavaScript输入验证:数字和破折号,javascript,regex,Javascript,Regex,嗨,我正在尝试验证JavaScript中的输入。格式必须为:整数+破折号+整数。整数和破折号之间可以有空格,但整数必须是数字格式(不允许使用“e”),并且第一个数字小于第二个数字。例如:1-100,1-100,或1-100。我不熟悉正则表达式,但我觉得使用正则表达式应该更有效。有人能告诉我怎么做吗?谢谢 试试这样的方法: function validateMyInt(s) { var reg = /^(\d+)\s*-\s*(\d+)$/; var match = reg.exec(s)
function validateMyInt(s) {
var reg = /^(\d+)\s*-\s*(\d+)$/;
var match = reg.exec(s);
if(match) {
var a = parseInt(match[1],10), b = parseInt(match[2],10);
return a < b;
}
return false;
}
console.log(validateMyInt("1-100"));
console.log(validateMyInt("1- 100"));
console.log(validateMyInt("1 -100"));
console.log(validateMyInt("100-1"));
函数validateMyInt(s){
var reg=/^(\d+)\s*-\s*(\d+)$/;
var match=注册执行官;
如果(匹配){
变量a=parseInt(匹配[1],10),b=parseInt(匹配[2],10);
返回a
有一些很好的在线资源可供学习正则表达式。欢迎访问SO。请访问,并采取的,看看什么和如何问。提示:这个问题作为一个“给我密码”是离题的-相反,显示你尝试了什么,如果你失败了,我们会帮助你-只需搜索整数和破折号就可以得到这样的结果:在你的JavaScriptmatch()中尝试像这样的/^(\d*\-\d*)\w+
@Catalyst-请帮个忙,在给出“简单示例”时使用ecma262而不是ES6-您的脚本需要IE11+才能运行<代码>var nums=str.split(“-”);返回值(nums.length==2&&nums[1]-nums[0]>0)issimpler@mplungjan我的错。我主要是后端javascript,我忘了。(我也忘了数学有时是存在的)。{0,}
当有*
的时候,它是满嘴的。