zoukankan      html  css  js  c++  java
  • 正则表达式中圆括号的用法

    var rgExp = /(^D*[0-9])/; 
    var str = "this is fun 01 stuff";
    var resu = str.match(rgExp);
    document.writeln(resu);

    结果为: this is fun 0,this is fun 0

    如果使用圆括号的模式在匹配完成后,会记住这一匹配。被记住的值保存在结果数组中,此例中的结果中间有一个逗号,表明它们是数组的两项。第一个结果是匹配,第二个来自圆括号模式保存的值。如果不用圆括号括着整个模式,而只括其中一部分的话,比如/(^D*)[0-9]/,结果就是下面的例子。

    var rgExp = /(^D*)[0-9]/; 
    // or var rgExp = /^(D*)[0-9]/;
    var str = "this is fun 01 stuff";
    var resu = str.match(rgExp);
    document.writeln(resu);

    结果为 : this is fun 0,this is fun

    第一项是匹配的字符串,第二项是来自括号模式保存的值。

    如果改成/(^D*)([0-9])/,则结果会是三项,即 this is fun 0,this is fun ,0 

    RegExp有一些特殊字符,被标记为$1,$2一直到$9,它们用于保存圆括号所找到的字串。括号模式匹配的值也可以使用,如:

    var rgExp = /(w*)-*(w*)/;
    var str = "java--script";
    var resu = str.replace(rgExp,"$2_$1");
    document.writeln(resu);

    结果为: script_java

  • 相关阅读:
    readonly
    怎么查看ubuntu是32bit还是64bit的?
    array_diff使用注意
    PhpStorm 快速查找文件 `Ctrl`+`Shift`+`N`
    discuz安装,uc_server目录下乱码问题:
    vim,删除所有
    查看文件大小
    代码调试小结(一)
    Ansible 远程执行脚本
    Ansible 拷贝文件或目录
  • 原文地址:https://www.cnblogs.com/lswit/p/4678778.html
Copyright © 2011-2022 走看看