sitemap
知识分享网:一个值得你收藏的网站!
当前位置:网站首页 > JavaScript > js常用的正则表达式

js常用的正则表达式

作者:xuhongji发布时间:2020-08-10分类:JavaScript浏览:106评论:0


导读:1、js正则匹配大于0小于等于100,其中最多可以保留两位小数var reg = /^\d+(?:\.\d{1,2})?$/;  ...

1、js正则匹配大于0小于等于100,其中最多可以保留两位小数

var reg = /^\d+(?:\.\d{1,2})?$/;  //包括0
var reg = /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/;//不包括0

2、手机号码正则表达式验证

if(!(/^1(3|4|5|7|8)\d{9}$/.test(phone))){ 
    alert("手机号码有误,请重填");  
    return false; 
}

3、用户名正则,4到16位(字母,数字,下划线,减号)

var uPattern = /^[a-zA-Z0-9_-]{4,16}$/;

4、整数正则

//正整数正则
var posPattern = /^\d+$/;
//负整数正则
var negPattern = /^-\d+$/;
//整数正则
var intPattern = /^-?\d+$/;

5、数字正则---可以是整数也可以是浮点数

//正数正则
var posPattern = /^\d*\.?\d+$/;
//负数正则
var negPattern = /^-\d*\.?\d+$/;
//数字正则
var numPattern = /^-?\d*\.?\d+$/;

6、Email正则

var reg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;

7、是否为PC端

isPC () { //是否为PC端
    var userAgentInfo = navigator.userAgent;    
    var Agents = ["Android", "iPhone", "SymbianOS", "Windows Phone","iPad", "iPod"];    
    var flag = true;    
    for (var v = 0; v < Agents.length; v++) {        
    if (userAgentInfo.indexOf(Agents[v]) > 0) {
            flag = false;            
            break;
        }
    }    
    return flag;
}

8、浏览器类型

browserType(){    
    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
    var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
    var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;    
    var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器  
    var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器
    var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1; //判断是否Safari浏览器
    var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1; //判断Chrome浏览器

    if (isIE) {        
    var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
        reIE.test(userAgent);        
        var fIEVersion = parseFloat(RegExp["$1"]);        
        if(fIEVersion == 7) return "IE7"
        else if(fIEVersion == 8) return "IE8";        
        else if(fIEVersion == 9) return "IE9";        
        else if(fIEVersion == 10) return "IE10";        
        else return "IE7以下"//IE版本过低
    }    
    if (isIE11) return 'IE11';    
    if (isEdge) return "Edge";    
    if (isFF) return "FF";    
    if (isOpera) return "Opera";    
    if (isSafari) return "Safari";    
    if (isChrome) return "Chrome";
}

9、type 类型判断

isString (o) { //是否字符串
    return Object.prototype.toString.call(o).slice(8, -1) === 'String'}

isNumber (o) { //是否数字
    return Object.prototype.toString.call(o).slice(8, -1) === 'Number'}

isBoolean (o) { //是否boolean
    return Object.prototype.toString.call(o).slice(8, -1) === 'Boolean'}

isFunction (o) { //是否函数
    return Object.prototype.toString.call(o).slice(8, -1) === 'Function'}

isNull (o) { //是否为null
    return Object.prototype.toString.call(o).slice(8, -1) === 'Null'}

isUndefined (o) { //是否undefined
    return Object.prototype.toString.call(o).slice(8, -1) === 'Undefined'}

isObj (o) { //是否对象
    return Object.prototype.toString.call(o).slice(8, -1) === 'Object'}

isArray (o) { //是否数组
    return Object.prototype.toString.call(o).slice(8, -1) === 'Array'}

isDate (o) { //是否时间
    return Object.prototype.toString.call(o).slice(8, -1) === 'Date'}

isRegExp (o) { //是否正则
    return Object.prototype.toString.call(o).slice(8, -1) === 'RegExp'}

isError (o) { //是否错误对象
    return Object.prototype.toString.call(o).slice(8, -1) === 'Error'}

isSymbol (o) { //是否Symbol函数
    return Object.prototype.toString.call(o).slice(8, -1) === 'Symbol'}

isPromise (o) { //是否Promise对象
    return Object.prototype.toString.call(o).slice(8, -1) === 'Promise'}

isSet (o) { //是否Set对象
    return Object.prototype.toString.call(o).slice(8, -1) === 'Set'}

isFalse (o) {    if (!o || o === 'null' || o === 'undefined' || o === 'false' || o === 'NaN') return true
        return false}

isTrue (o) {    return !this.isFalse(o)
}



欢迎 发表评论:

JavaScript排行
«   2020年11月   »
1
2345678
9101112131415
16171819202122
23242526272829
30
标签列表
网站分类
文章归档
最近发表
推荐文章