我有一个问题。我如何验证或格式化位置号00-00-00-000-000位0-9其中0是通过java脚本。
类似这样的事情
function formatTime(time) {
var result = false, m;
var re = /^\s*([01]?\d|2[0-3]):?([0-5]\d)\s*$/;
if ((m = time.match(re))) {
result = (m[1].length == 2 ? "" : "0") + m[1] + ":" + m[2];
}
return result;
}
alert(formatTime(" 1:00"));
alert(formatTime("1:00 "));
alert(formatTime("1:00"));
alert(formatTime("2100"));
alert(formatTime("90:00")); // false
答案 0 :(得分:1)
简单功能:JSFiddle
适用于格式为X-X-X-X-X
的任何输入字符串,前三个X可以在0到99之间,最后两个X可以在0到999之间。
function doIt(lala) {
var reg = /^\s*([0-9]{1,2})\-([0-9]{1,2})\-([0-9]{1,2})\-([0-9]{1,3})\-([0-9]{1,3})\s*$/;
var m = lala.match(reg);
if(m) {
var n1 = m[1].length == 1 ? ('0' + m[1]) : m[1];
var n2 = m[2].length == 1 ? ('0' + m[2]) : m[2];
var n3 = m[3].length == 1 ? ('0' + m[3]) : m[3];
var n4 = m[4].length == 1 ? ('00' + m[4]) : (m[4].length == 2 ? '0' + m[4] : m[4]);
var n5 = m[5].length == 1 ? ('00' + m[5]) : (m[5].length == 2 ? '0' + m[5] : m[5]);
return (n1 + '-' + n2 + '-' + n3 + '-' + n4 + '-' + n5);
}
return ''; // you can choose to return false here
// if you want to use this as some sort of validation
}