js 使用正则

有时这样写:

var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); 

有时又这样写:

var tmp = /cityid=[^&]*/; 

其实alert(ret)的结果就是下边这样的,根据个人喜好随便写咯。


至于用什么方法来使用正则,方法很多的:

test方法用来测试字符串是否匹配给出的匹配模式,返回布尔值

exec方法返回包含第一个匹配的的数组或null

match方法返回包含所有匹配子字符串的数组

以下是一些用到的js的验证,手机号码需要优化

//判断是否为手机号或者固话
function istel(tel) {
    var regtel = /^[\d]{11}$|^[\d]{8}$/;
    if (!(regtel.test(tel))) {
        return false;
    }
    else {
        return true;
        
    }
}
//检测是否为数字
function isNumber(num) {
    var regnum = /^[\d]+$/;
    if (!(regnum.test(num))) {
        return false;
    }
    else {
        return true;

    }
}
//判断日期时间格式是否正确,包含了闰年、大小月等,个位数时直接输入就行了,不用手动补0
function isdatetime(time) {
    var regdealtime = /^((((19|20)\d{2})-(0?[13-9]|1[012])-(0?[1-9]|[12]\d|30))|(((19|20)\d{2})-(0?[13578]|1[02])-31)|(((19|20)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))-0?2-29))\s+([0-1]?[0-9]|2[0-3]|[0-9]):([0-5][0-9]|[0-9]):([0-5][0-9])$/;
    if (!(regdealtime.test(time))) {
        return false;
    }
    else {
        return true;
    }
}
//判断日期格式是否正确
function isdate(time) {
    //var regdealtime = /20\d{2}-\d{1,2}-\d{1,2}/;
    var regdealtime = /^((((19|20)\d{2})-(0?[13-9]|1[012])-(0?[1-9]|[12]\d|30))|(((19|20)\d{2})-(0?[13578]|1[02])-31)|(((19|20)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))-0?2-29))$/;

    if (!(regdealtime.test(time))) {
        return false;
    }
    else {
        return true;
    }
}
//判断日期是否超过当前日期
function dateIsFuture(date) {
    var now = new Date();
    var dealdate = new Date(Date.parse(date.replace('-', '/').replace('-', '/')));
    if (dealdate > now) {
        return true;
    }
    else {
        return false;
    }
}
//给定日期是否为当前日期的30天前
function isOff30(date) {
    var now = new Date();
    var dealdate = new Date(Date.parse(date.replace('-', '/').replace('-', '/')));
    if (Math.round((now - dealdate) / 86400000) > 30) {//30前的日期
        return true;
    }
    else {
        return false;
    }
}
//给定日期是否为当前日期的7天前
function isOff7(date) {
    var now = new Date();
    var dealdate = new Date(Date.parse(date.replace('-', '/').replace('-', '/')));
    if (Math.round((now - dealdate) / 86400000) > 7) {//7前的日期
        return true;
    }
    else {
        return false;
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值