zoukankan      html  css  js  c++  java
  • js中的正则

    | : 或的意思 ,意味着你想匹配的关键词为多个,并且都是你想要的
    如:
    var str= '菲称仁爱礁附近17艘中国船均在菲军监视之下'
    var re = /菲称|中国船|监视之下/g;
     
    str.replace(re,function(str){}
     
    **仁爱礁附近17艘***均在菲军****
     
     
     
    //匹配子项 : 小括号 () (还有另外一个意思,分组操作)

    //1+1*2
    //(1+1)*2
     
    //把正则的整体叫做(母亲)
    //然后把左边第一个小括号里面的正则,叫做这个第一个子项(母亲的第一个孩子)
    //第二个小括号就是第二个孩子
     
    var str = '2013-6-7';

    var re = /(d+)(-)/g;

    str = str.replace(re,function($0,$1,$2){
        //第一个参数:$0(母亲),第二个参数 : $1(第一个孩子)
        //,第二个参数 : $1(第二个孩子)
        alert( $0 );
        // alert( $1 );
        // alert( $2 );
        
        //return $1 + '.';
        
        return $0.substring(0,$0.length-1) + '.';
        
    });
    第一次alter 弹出 “2013-“ 第二次弹出“6-”  其中第一次的$1为2013 $2为-   第二次的$1为6 $2为- 这才是匹配子项的含意
     
     
    var str = 'abc';

    var re = /(a)(b)(c)/;

    alert( str.match(re) ); //[abc,a,b,c](当match不加g的时候才可以获取到子项的集合)
     

    var kwords=str.match(reg);
    1. reg不加g,match也只找第一个
    何时使用: 希望获得第一个关键词的内容和位置时
    返回值: 数组,其中包含找到的关键词内容
    kwords:["关键词"]
    kwords.index->关键词的位置 如果没找到,返回null!
    2. reg加g,match会找到所有关键词的内容
    何时使用: 希望获得所有关键词的内容时
    返回值: 数组,包含了所有关键词的内容
    数组的length属性,记录了所有关键词个数
    缺点: 只能找到所有关键词的内容,无法找到每个关键词的位置。
    强调: 只要使用match,都可能返回null,都要先判断不是null,再执行后续操作!

    //. : 任意字符
    //. : 真正的点

    /*var str = 'a.c';

    var re = /a.c/;

    alert(re.test(str));*/

    // : 独立的部分 ( 起始,结束,空格 )
    //B : 非独立的部分

    var str = 'onetwo';

    var re = /one/;

    alert( re.test(str) );
     
     
    //var re = /sClass/; //当正则需要传参的时候,一定要用全称的写法
            var re = new RegExp('\b'+sClass+'\b');  注意全称的写法  需要转义一下
     
     
     
     
     
    //1 : 重复的第一个子项
    //2 : 重复的第二个子项

    /*var str = 'abca';

    var re = /(a)(b)(c)2/;

    alert( re.test(str) );*/

    /*var re = /ww/; c9
    var re = /(w)1/; cc 99
     
     
     
     
     
     
     
  • 相关阅读:
    python学习笔记 class
    工作随谈之扯淡
    性能测试你了解多少?
    SVN常见问题汇总
    使用appium做自动化测试时,send_keyss只能输入字母数字,无法输入中文
    python+appium-desktop:安卓(android)7.0以上使用appium无法定位元素(无法refresh)且 无法运行脚本
    JMeter处理返回结果unicode转码为中文
    国内手机号段汇总(全)-2018-09
    Python : *args和**kwargs是什么东东呢?
    selenium 3.0变化
  • 原文地址:https://www.cnblogs.com/zjpzjp/p/7486336.html
Copyright © 2011-2022 走看看