Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用JS Regex验证数据_Javascript_Regex - Fatal编程技术网

Javascript 使用JS Regex验证数据

Javascript 使用JS Regex验证数据,javascript,regex,Javascript,Regex,我使用javascript正则表达式验证用户输入的日期,格式为mm/yyyy。我已经为这个和它的工作做了正则表达式,但是当我输入ab/abcd时,它仍然在验证它 这是我的JS和HTML代码 function validate() { var name = document.getElementById("name").value; var pattern = /\d|\/|\d{4}/; if (pattern.test(name)) {

我使用javascript正则表达式验证用户输入的日期,格式为mm/yyyy。我已经为这个和它的工作做了正则表达式,但是当我输入ab/abcd时,它仍然在验证它

这是我的JS和HTML代码

function validate() {
    var name = document.getElementById("name").value;
    var pattern = /\d|\/|\d{4}/;        
    if (pattern.test(name)) {
        alert(name +" has alphanumeric value");
        return true;
    } else {
        alert("Name is not valid.Please input alphanumeric value!");
        return false;
    }
}
Date: <input type="text" name="name" id="name" />
<input type="submit" value="Check" onclick="validate();"/>
函数验证(){
var name=document.getElementById(“name”).value;
变量模式=/\d | \/\d{4}/;
if(模式测试(名称)){
警报(名称+“具有字母数字值”);
返回true;
}否则{
警报(“名称无效。请输入字母数字值!”);
返回false;
}
}
日期:
如何验证以mm/yyy格式输入的日期, 我正在使用Jquery DatePicker,它允许以这种格式选择日期,并且DatePicker还允许手动输入。这样地 对此是否有其他建议?

更新:

请尝试以下模式:

var pattern = /^\d{2}\/\d{4}$/;    
请参阅工作代码,网址为:

提取月份的另一把小提琴:


您想允许使用
mm/ddddd
格式的数据吗?@第四次您看到我的更新问题感谢它的工作,我可以在这里给出数字范围吗?比如一个月可以在1-12之间?我相信,用正则表达式是不行的。您可能想看看其他一些验证方法。好的,谢谢,再问一个问题,如果用户输入2014年1月,它将不会验证该月,只有输入2014年1月,它才会验证。在这种情况下,我该怎么办?您可以提取“/”之前的第一个数字并自己对其进行评估,以确保其介于1和12之间。var pattern=/^\d\d?\/\d{4}$/;