常用正则表达式

常用正则

 /<[^<]*>/gi       //去掉所有HTML标签
/<(?!\/?br\/?.+?>|\/?img.+?>)[^<>]*>/gi     //去掉HTML标签,切保留img br标签
/[\S]+/        //必填项不能为空
/^1\d{10}$/      //手机号码
/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/    //邮箱
/(^#)|(^http(s*):\/\/[^\s]+\.[^\s]+)/      //   url
/(^\d{15}$)|(^\d{17}(x|X|\d)$)/   //身份证号

特殊字符转义

可用于页面输入特殊字符时使用 不过一般都没用到

str.replace(/[<>&"\'\(\)\\\/;\]\[]/g,function(c){return {'<':'<','>':'>','&':'&','"':'"','\'':''','\(':'(','\)':')','\\':' \','\/':'/',';':';','\]':' ]','\[':' ['}[c];});

字符串是否包含特殊字符

var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\]<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?%+_]");
pattern.test(str)

判断最后几位替换成同等几位

"5AAAAA6BCAAA".replace(/(A(?=A+$)|A(?=$))/g,"B") 
输出: 5AAAAA6BCBBB

过滤字符串中的[哈哈哈]表情符号

emotion_data是表情包的json格式

var reg =/\[[^\[\]]+\]/gi; 
var strs = str.replace(reg,function(a,b){ 
      var flag = true;
      for( var i=0;i';
                flag = false;
                return rep;
        }
     }
      if( flag ){
        return a;
      }
});

var emotion_data = {
    "code": 1,
    "data": [{
        "phrase": "[马到成功]",
        "type": "face",
        "url": "d_madaochenggong.png",
        "hot": false,
        "common": true,
        "category": "",
        "icon": "d_madaochenggong.png",
        "value": "[马到成功]",
        "picid": ""
    },{
        "phrase": "[马上有对象]",
        "type": "face",
        "url": "d_duixiang.png",
        "hot": false,
        "common": true,
        "category": "",
        "icon": "d_duixiang.png",
        "value": "[马上有对象]",
        "picid": ""
    }]
};

你可能感兴趣的:(常用正则表达式)