JS 正则表达式匹配"0001-9999","001-999","01-99" 如题,数字4位,3位,2位,不够补0, 这三组数值的正则表达式应该怎么写呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 都是四位数就 小小 回复的那个 /^\d{4}$/.test(value) 一个很笨的方法:var s1 = "1"; var reg = /^\d{1,4}$/g; s1 = s1.replace(reg, function (m) { if (m.length == 4) { return m; } else if (m.length == 3) { return "0" + m; } else if (m.length == 2) { return "00" + m; } else if (m.length == 1) { return "000" + m; } }); alert(s1); var rNum = /(\d{2,4})-(\d{2,4})/; var sToMatch1 = "0001-9999",sToMatch2 = "001-999",sToMatch3 = "01-99"; var sToMatch = sToMatch3; if( rNum.test( sToMatch ) ){ var sResult = sToMatch.replace( rNum , function(s){ return ("0000"+RegExp.$1).slice( -4 ) + "-" + ("0000"+RegExp.$2).slice(-4)} ); alert( sResult ); } popup的div位置问题 这js不理解,求解释 如何在html和JS中的xml关联 js弹出窗体 实在没办法了,再发求助帖 请教个JS取div中id的问题 怎么替换 成普通的空格,一个unicode值是160,一个是32。谢谢! 求一简单js 补贴送分,请 xkou(九天神龙) 和 ops2000(吾痴石) 跟贴接分。 如何使文本框中的文本处于选中状态 js验证码颜色问题 关闭 chrome浏览器 修改数据库
一个很笨的方法:
var s1 = "1";
var reg = /^\d{1,4}$/g;
s1 = s1.replace(reg, function (m) {
if (m.length == 4) { return m; }
else if (m.length == 3) { return "0" + m; }
else if (m.length == 2) { return "00" + m; }
else if (m.length == 1) { return "000" + m; }
});
alert(s1);
var sToMatch1 = "0001-9999",sToMatch2 = "001-999",sToMatch3 = "01-99";
var sToMatch = sToMatch3;
if( rNum.test( sToMatch ) ){
var sResult = sToMatch.replace( rNum , function(s){ return ("0000"+RegExp.$1).slice( -4 ) + "-" + ("0000"+RegExp.$2).slice(-4)} );
alert( sResult );
}