zoukankan      html  css  js  c++  java
  • 正则表达式

    一、正则表达式的4个常用常用方法:

      1.test:

    //test : 正则去匹配字符串,如果匹配成功就返回真,如果匹配失败就返回假
    //test的写法 : 正则.test(字符串)
    var str = 'abcdef';
    var re = /b/;
    alert( re.test(str) );
    //显示的结果为:true

      2.search:

    //search : 正则去匹配字符串 , 如果匹配成功,就返回匹配成功的位置,如果匹配失败就返回 -1
    //search的写法 : 字符串.search(正则)
    var str = 'jksjlfw';
    var re = /s/;
    alert(str.search(re));
    //显示的结果为:2

      3.match:

    //match : 正则去匹配字符串,如果匹配成功,就返回匹配成功的数组,如果匹配不成功,就返回null
    //match的写法 : 字符串.match(正则)
    var str = 'haj123sdk54hask33dkhalsd879';
    //在正则表达式双斜杠后面添加一个g表示匹配全局,d表示匹配数字0-9,在d后面添加一个加号表示匹配多个d
    var re = /d+/g;
    alert( str.match(re));
    //显示的结果为:123,54,33,879

      4.replace:

    //replace : 正则去匹配字符串,匹配成功的字符去替换成新的字符串
    //replace的写法 : 字符串.replace(正则,新的字符串)
    var str = 'haj123sdk54hask33dkhalsd879';
    var re = /d+/g;
    //将所有的数字全部提换成了汉字两个字
    alert(str.replace(re,'汉字'))
    //显示的结果为:haj汉字sdk汉字hask汉字dkhalsd汉字

    二、正则表达式部分细节:

      1.replace : 第二个参数:可以是字符串,也可以是一个回调函数

    //菲称仁爱礁附近17艘中国船均在菲军监视之下
    var str = '菲称仁爱礁附近17艘中国船均在菲军监视之下';
    var re = /菲称|中国船|监视之下/g;
    str = str.replace(re,function(str){
        //函数的第一个参数:就是匹配成功的字符
        var res = '';
        for (var i = 0; i < str.length; i++) {
            res += '*';
        };
        return res
    })
    alert(str);
    //显示的结果为:**仁爱礁附近17艘***均在菲军****

       2.匹配子项:

    //匹配子项 : 小括号 ()  (还有另外一个意思,分组操作)
    var str = '2013-6-7';
    var re = /(d+)(-)/g;
    str = str.replace(re,function(str1,str2,str3){
        //str1表示正则获取的整体
        //str2表示正则的第一个子项也就是第一个括号里的内容
        //srt3表示正则的第二个子项也就是第二个括号里的内容;
    return $1 + '.'; }); alert( str ); //显示结果为:2013.6.7

       3.知识点概括:

        ①[ ] 中括号的整体代表一个字符,在[ ]中可以限定范围,例如:[a-z]则表示小写字母a-小写字母z,[A-Z]则表示大写字母A-大写字母Z,[0-9]则表示数字0-9;

         ②排除 : ^ 如果^写在[]里面的话,就代表除[ ]内容以内范围都包括在内的意思;

         ③量词 :

          {4,7}  : 最少出现4次,最多出现7次

          {4,} : 最少出现4次

          {4} : 正好出现4次

          + : 表示一次或者一次以上

          ? : 表示0次或者一次

          * : 表示最少出现0次

  • 相关阅读:
    C#深复制和浅复制
    C#程序设计六大原则记录
    C#异步
    线程同步
    线程基础
    委托,事件
    XmlSerializer
    C#接口
    C#封装
    C#多态
  • 原文地址:https://www.cnblogs.com/rickyctbur/p/11027829.html
Copyright © 2011-2022 走看看