zoukankan      html  css  js  c++  java
  • 有关正则表达式的Js方法(replace)

    整理一下最近常用的几个有关正则的js方法

    replace

    语法:stringObject.replace(regexp/substr,replacement)

    用法1
    const str='abc1314520def';
    str.replace(/D/g,'');/*D非数字,g全局匹配,每个地方都匹配一次*/
    结果:
    '1314520'
    
    
    
    用法2:
    str.replace('abc','');/*直接用字符串匹配*/
    结果:
    '1314520def'
    
    
    
    用法3:
    str.replace(/D/g,function(rs){return rs.toUpperCase()})
    结果:
    'ABC1314520DEF'
    /*第二个参数可传入函数,会对每个匹配到的字符串'rs'做一次处理,然后你可以将结果return 出来*/
    
    
    
    进阶用法:将网址查询的search部分转化为键值对(就是url问号后面的东西)
    function parseURL(url=window.location.href){/*es6语法直接设置默认值*/
      const search = url.substr(url.indexOf('?')+1);
      const obj={};
      search.replace(/([^&=]+)=([^&=]*)/g,function(rs,$1,$2){
    
        obj[decodeURIComponent($1)]=decodeURIComponent($2)
    
      })
      return obj
    }
    
    $1——$99就是匹配第1到第99个子表达式的文本,表达式1:'([^&=]+)',表达式2:'([^&=]*)'等等*/
    /*这里我们没有用到rs 只是为了占位而已,因为第一个参数默认为rs*/
  • 相关阅读:
    如何进行Django单元测试
    django使用celery实现异步操作
    django 多并发,多线程。
    cookies设置时间
    Mysql实现企业级日志管理、备份与恢复
    Redis与Memcached的区别
    cookie 和session 的区别详解
    python内存泄露查找
    浙大月赛ZOJ Monthly, August 2014
    Vector
  • 原文地址:https://www.cnblogs.com/xiaojingyuan/p/6622525.html
Copyright © 2011-2022 走看看