美文网首页
String支持4种使用正则表达式的方法

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

作者: 我还是不知道取啥名儿 | 来源:发表于2018-02-09 14:47 被阅读0次

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"]

相关文章

网友评论

      本文标题:String支持4种使用正则表达式的方法

      本文链接:https://www.haomeiwen.com/subject/cwlluxtx.html