美文网首页
JS replace正则匹配经典案例

JS replace正则匹配经典案例

作者: lwz4070 | 来源:发表于2018-08-13 16:21 被阅读0次
  • 实现字符串的trim函数,去除字符串两边的空格
 String.prototype.trim = function(){
 
  //方式一:将匹配到的每一个结果都用""替换
  return this.replace(/(^\s+)|(\s+$)/g,function(){
    return "";
  });
 
  //方式二:和方式一的原理相同
  return this.replace(/(^\s+)|(\s+$)/g,'');
};

^s+ 表示以空格开头的连续空白字符,s+$ 表示以空格结尾的连续空白字符,加上() 就是将匹配到的结果提取出来,由于是 | 的关系,因此这个表达式最多会match到两个结果集,然后执行两次替换。

  • 提取浏览器url中的参数名和参数值,生成一个key/value的对象
function getUrlParamObj(){
  var obj = {};
  //获取url的参数部分
  var params = window.location.search.substr(1);
  //[^&=]+ 表示不含&或=的连续字符,加上()就是提取对应字符串
  params.replace(/([^&=]+)=([^&=]*)/gi,function(rs,$1,$2){
    obj[$1] = $2;
  });
 
  return obj;
}

/([&=]+)=([&=]*)/gi 每次匹配到的都是一个完整key/value,形如 xxxx=xxx, 每当匹配到一个这样的结果时就执行回调,并传递匹配到的key和value,对应到1和2

  • 将手机号12988886666转化成129 8888 6666
function telFormat(tel){
 
  tel = String(tel);
 
  //方式一
  return tel.replace(/(\d{3})(\d{4})(\d{4})/,function (rs,$1,$2,$3){
    return $1+" "+$2+" "+$3
  });
 
  //方式二
  return tel.replace(/(\d{3})(\d{4})(\d{4})/,"$1 $2 $3");
}

(\d{3}\d{4}\d{4}) 可以匹配完整的手机号,并分别提取前3位、4-7位和8-11位,"12 $3" 是在三个结果集中间加空格组成新的字符串,然后替换完整的手机号。

相关文章

  • JS replace正则匹配经典案例

    实现字符串的trim函数,去除字符串两边的空格 ^s+ 表示以空格开头的连续空白字符,s+$ 表示以空格结尾的连续...

  • 2018-09-21

    请用js去除字符串空格 方法一:使用replace正则匹配的方法 使用str.trim()方法 str.trim(...

  • 请用js去除字符串空格?

    请用js去除字符串空格?方法一:使用replace正则匹配的方法 去除所有空格: str = str.replac...

  • js基础

    请用js去除字符串空格? 方法一:使用replace正则匹配的方法 去除所有空格: str = str.repla...

  • 请用js去除字符串空格?

    方法一:使用replace正则匹配的方法 去除所有空格: str = str.replace(/\s*/g,"")...

  • JS去除字符串空格

    一、replace正则匹配方法 去除字符串内所有的空格:str = str.replace(/\s*/g,"");...

  • js删除字符空格

    1、replace正则匹配方法 去除字符串内所有的空格:str = str.replace(/\s*/g,"");...

  • Js正则匹配常用案例

    1 用户名正则 2 密码强度正则 3 整数正则 4 数字正则 5 Email正则 6 手机号码正则 7 身份证号正...

  • js正则知识点记录

    replace()使用$1,$2...匹配指定字符串 正则匹配中文表示汉字的正则: [\u4e00-\u9fa5]...

  • 正则匹配

    正则匹配去除空格 //去左空格;function ltrim(s){return s.replace(/(^\s)...

网友评论

      本文标题:JS replace正则匹配经典案例

      本文链接:https://www.haomeiwen.com/subject/xgdubftx.html