zoukankan      html  css  js  c++  java
  • 正则字典

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8" />
    <title>Document</title>
    <script type="text/javascript">
    window.onload=function(){
        var str='abc';
        var re=/c/g;
        
    //    alert( str.search(re) );//匹配成功,返回位置
        alert(  str.match(re) );//匹配成功,返回数组
        
    //    alert( str.replace(re,'lu') );//匹配成功,替换新的字符
        
    //    alert( re.test(str) );//匹配成功,返回真假
        d 表示数字    [0-9]
        w 表示字母、数字、下划线 [a-z0-9_]
        s 表示空格
        
        D 表示数字    [^0-9]
        W 表示字母、数字、下划线 [^a-z0-9_]
        S 表示空格

      /*
      量词
     {n,m}//最少n次,最多m次
     {n,}//最少n次,最多不限
     {,m}//最少不限,最多m次
     {n}//正好n次*/
     
     var str='abca';
     var re=/(a)(b)(c)1/;
     
     alert( re.test(str) );
     //1,2表示重复的第一个子项,重复的第二个子项
     
     
     /*高级replace,第二个参数可以是字符串,也可以是函数
     函数的第一个参数,就是匹配成功的字符*/
     var str2='abc';
     var re=/a/;
     str2.replace(re,function (str) {
      console.log(str);
      
     })
    }
    </script> </head> <body> </body> </html

    补充于2015.7.1,今天想郑重声明一下replace,search,match这些都不是正则的方法,我是怎么知道的?是培训加学习知道的,

    下面简单介绍一下正则的方法exec

    var pattern=/java/ig
        var text='JavaScript is more fun than Java or JavaBeans';
        var result;
        result=pattern.exec(text);

    exec跟string.match差不多,先看结果

    没错,他返回的是一个数组!,第一个表示匹配的值,第二个表示他匹配的索引值,第三个表示他匹配的文本。

    厉害吧!强大吧!以后再详细聊

  • 相关阅读:
    ES6之模块化
    ES6之展开运算符
    ES6之解构赋值
    ES6之对象的语法糖
    ES6之函数的语法糖
    ES6之模板字符串
    Exchanger详解
    DNS解析过程
    CyclicBarrier详解
    ConuntDownLatch详解
  • 原文地址:https://www.cnblogs.com/masita/p/4513338.html
Copyright © 2011-2022 走看看