js正则表达式test方法、exec方法与字符串search方法区别

时间:2021-07-20 18:48:38

1.正则表达式test方法

test() 方法用于检测一个字符串是否匹配某个模式

返回值:

如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false

 

2、正则表达式exec方法

exec() 方法用于检索字符串中的正则表达式的匹配。

返回值:返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

 

3、字符串search方法

search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

返回值:stringObject 中第一个与 regexp 相匹配的子串的起始位置。

 

4、示例代码:

<!DOCTYPE html>
<html lang="zh">

<head>
<meta charset="UTF-8" />
<title>JavaScript中字符串的match与replace方法</title>
</head>

<body>

<script type="text/javascript">
var str = "Visit W3School W3School!"
//控制台输出6
console.log(str.search(/W3School/));
var reg = new RegExp("W3School");
//控制台输出true 表示如果字符串 中含有与正则表达式匹配的文本
console.log(reg.test(str));
//控制台输出:"W3School", index: 6, input: "Visit W3School W3School!"
//第一个"W3School"表示与正则表达式相匹配的文本
//第二个index: 6表示匹配文本的第一个字符的位置
//第三个input: "VVisit W3School W3School!"表示存放的是被检索的字符串 string
console.log(reg.exec(str));
</script>
</body>

</html>

说明:正则表达式的exec使用比较复杂,正则表达式的test方法和字符串的search方法比较简洁