zoukankan      html  css  js  c++  java
  • JavaScript学习笔记-用于模式匹配的String方法

    用于模式匹配的String方法:
     
    String支持4种使用正则表达式的方法:
     
            seach()用于检索,参数是一个正则表达式,返回第一个与之匹配的子串的位置,找不到则返回-1,如果参数不是正则表达式,则首先会通过RexExp构造函数将它转换成正则表达式,seach()方法不支持全局搜索,它忽略修饰符g;
     
            replace()用于检索与替换操作,第一个参数是一个正则表达式,第二个参数是要进行替换的字符串。它对调用该方法的字符串检索,按照模式匹配子串替换成第二个参数,若包含修饰符g则全文匹配。若第一个参数不是正则表达式而是字符串,则直接搜索替换掉这个字符串;
                    text.replace(/javascript/gi,'JavaScript')表示在text全文中搜索不区分大小写的javascript替换成JavaScript
            如果用来替换的字符串中出现($加数字),则replace()方法将用与$加数字指代的子表达式匹配的文本来替换,如:
                    var quote = /"([^"]*)"/g
                    text.replace(quote,'“$1”'); 全文搜索与/"([^"]*)"/匹配的字符串,替换为“$1”(表示只改变两边的双引号为中文半角,而存储在$1中的内容不变)$1存储了指代与第一个左圆括号内的子表达式匹配的字符串;   
     
            match() 唯一的参数是一个正则表达式,返回的是一个由匹配结果组成的数组,如果参数不是正则表达式,则首先会通过RexExp构造函数将它转换成正则表达式;
            (二)如果这个正则表达式带修饰符g,match()返回的数组元素是匹配全文得到的所有字符串;
            (二)如果这个正则表达式不带修饰符g,match()只检索第一个匹配,但他也返回一个数组(数组的第一个元素是匹配的整个字符串,接下来的元素是表达式中所有用圆括号括起来的子表达式匹配到的字符串,每个元素对应一个括号)
                如:var url = /(w*)://([w.]+)/(S*)/;
                        var text = 'http://www.w3school.com.cn/jsref';
                        var result = text.match(url);
                        if(result != null) {
                                var fullurl = result[0];
                                var protocol =result[1];
                                var host = result[2];
                                var path = result[3];
                        }
            split()将字符串按参数指定的分隔符拆分为多个子串组成的数组,如:
                    '123,345,789'.split(','); //返回['123','345','789']
                    '1,   2  , 3, 4   ,5  ,  6'.split(/s*,s*/);  //返回['1','2','3','4','5','6']
     
     
     
  • 相关阅读:
    HTML5你必须知道的28个新特性
    localStorage使用总结
    Oracle分页查询排序数据重复问题
    servlet,RMI,webservice之间的区别
    远程通信的几种选择(RPC,Webservice,RMI,JMS的区别)
    几种通讯协议的比较
    http、TCP/IP协议与socket之间的区别
    Oracle修改序列(Sequence)起始值问题
    mybatis开启二级缓存小记
    使用canvas绘制渐变色矩形和使用按键控制人物移动
  • 原文地址:https://www.cnblogs.com/susufufu/p/5705796.html
Copyright © 2011-2022 走看看