String支持4种使用正则表达式的方法

1.search()

参数: 一个正则表达式

返回: 第一个与之匹配的子串的起始位置,如果找不到匹配的子串,返回-1.

示例: 

"JavaScript".search(/script/i);        // 4

注意: search()方法不支持全局检索,它忽略正则表达式参数中的修饰符g.

2.replace()

replace()方法用词执行检索和替换。

参数: 

    参数1:一个正则表达式

    参数2:要进行替换的字符串(可以是函数)

示例1:

// 将所有不区分大小写的javascript都替换成大小写正确的JavaScript

text.replace(/javascriipt/gi, "JavaScript");

示例2:

// 一段引用文本起始于引号,结束于引号,中间的内容区域不能包含引号

var quote = /''[(^")]*"/g

// 用中文半角引号替换英文引号,同时要保持引号之间的内容(存储在$1中)没有被修改

text.replace(quote, ' “$1” ')

在示例2中,正则表达式中使用圆括号括起来的子表达式是带有从左到右的索引编号的,而且正则表达式会记忆与每个子表达式匹配的文本。如果在替换字符串中出现了$加数字,那么replace()将用与指定的子表达式相匹配的文本来替换这两个字符。

3. match()

参数: 一个正则表达式

返回:由匹配结果组成的数组(如果参数正则表达式中设置了修饰符g,则该方法返回的数组包含字符串中的所有匹配结果)

示例:

"1 plus 2 equals 3".match(/\d+/g/)   //返回["1",  "2", "3"]

注意: 如果正则表达式没有设置修饰符g, match() 就不会进行全局检索,它只检索第一个匹配。但即使match()执行的不是全局检索,它也返回一个数组。在这种情况下,数组的第一个元素就是匹配的字符串,余下的元素则是正则表达式中用圆括号括起来的子表达式

4. split()

这个方法用以将调用它的字符串拆分为一个子串组成的数组,使用的分隔符是split()的参数。

示例:

"123,456,789".split(",");  // 返回["123", "456", "789"]

split()方法的参数也可以是一个正则表达式。

"1,  2,  3,  4,  5".split(/\s*,\s*/);            //返回["1","2","3","4","5"]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 对于正则,著称火星文字,见名知意主要它晦涩难懂,一直以来,看到它总是怕怕的,在平时,也只是简单的用用,其主要...
    itclanCoder阅读 830评论 0 2
  • 初衷:看了很多视频、文章,最后却通通忘记了,别人的知识依旧是别人的,自己却什么都没获得。此系列文章旨在加深自己的印...
    DCbryant阅读 4,105评论 0 20
  •   引用类型的值(对象)是引用类型的一个实例。   在 ECMAscript 中,引用类型是一种数据结构,用于将数...
    霜天晓阅读 1,142评论 0 1
  • 以前对于正则是非常惧怕的,因为看不懂和学不会。但最近项目中频繁的使用到了正则,因此强迫自己去学习了解,慢慢的体会到...
    小b狸猫阅读 257评论 0 0
  • 标题党们注意了,我不是要探讨男女关系,而是,向你们展示一段7年时间。如果人生的轨迹是一条曲折向前的直线,这就是一条...
    苏一木阅读 258评论 0 0