我想检查字符串是否满足条件(第一个、第二个、第四个、第五个、第七个、第八个、第九个和第十个字符可以是任何数字。第三个和第六个必须是正斜杠。)类似于日期格式。我需要这个:
if (date !== SOMETHING ){
alert("Wrong input!");}
最佳答案
您可以尝试使用正则表达式来匹配日期(这可以确保它与格式(DD/MM/YYYY 或 MM/DD/YYYY)匹配:
if (date.match( /^\d{2}\/\d{2}\/\d{4}$/ )) {
alert("Valid input!");
} else {
alert("Wrong input!");
}
如果字符串与以下模式:
- 2 位数字
- 正斜杠
- 2 位数字
- 正斜杠
- 4 位数字
这是一个JS Fiddle这表明它正在工作。
这是另一个(更“ Eloquent ”)的解决方案(通过函数返回 JavaScript 日期):
function findDate(string) {
var dateTime = /(\d{2})\/(\d{2})\/(\d{4})/;
var match = dateTime.exec(string);
return new Date(Number(match[3]),
Number(match[2]) - 1,
Number(match[1]));
}
alert(findDate("30-01-2003"));
另外 - 我建议阅读 Regular Expressions - Eloquent JavaScript
关于javascript - JavaScript 中的通配符日期形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29462326/