JavaScript search正则搜索

JavaScript search正则搜索教程

JavaScript 中,search 方法用于检索 字符串 中指定的子字符串,或检索与 正则表达式 相匹配的子字符串,并返回子串的起始位置。

JavaScript search()函数详解

定义

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

语法

stringObject.search(regexp)

参数

参数 描述
regexp 该参数可以是需要在 stringObject 中检索的子串,也可以是需要检索的 RegExp 对象。
注释:要执行忽略大小写的检索,请追加标志 i。

返回值

stringObject 中第一个与 regexp 相匹配的子串的起始位置。如果没有找到任何匹配的子串,则返回 -1。

说明

search() 方法不执行全局匹配,它将忽略标志 g。它同时忽略 regexp 的 lastIndex 属性,并且总是从字符串的开始进行检索,这意味着它总是返回 stringObject 的第一个匹配的位置。

案例

search函数匹配查找字符串

使用 search 函数,在一个字符串中查找匹配另一个字符串

<!DOCTYPE html> <html> <head> <title>JavaScript search查找字符串</title> <script type="text/javascript"> console.log("嗨客网(www.haicoder.net)"); var strHaiCoder = "I love JavaScript and I study JavaScript From HaiCoder" var index1 = strHaiCoder.search("love"); console.log("Index1 =", index1); var index2 = strHaiCoder.search("haicoder"); console.log("Index2 =", index2); var index3 = strHaiCoder.search(/JavaScript/); console.log("Index3 =", index3); var index4 = strHaiCoder.search(/javascript/); console.log("Index4 =", index4); var index5 = strHaiCoder.search(/javascript/i); console.log("Index5 =", index5); </script> </head> </html>

程序运行后,控制台输出如下:

02_javascript search方法正则表达式.png

首先,我们定义了一个字符串类型的变量 strHaicoder,接着我们使用字符串的 search 函数查找字符串 “love”,结果查询到了,返回了查询的结果的下标。

接着,我们再次在字符串中使用 search 查找不存在的字符串,结果返回了 -1。接着,我们在 search 函数中,使使用正则表达式,查找了字符串中的 “JavaScript” 字符串,此时,返回了正确的下下标。

最后,我们使用正则表达式查找了不存在的 “javascript” 字符串,返回了 -1,因为正则匹配是大小写敏感的,因此匹配失败,最后,我们在正则表达式后面加了 “i” 标志,表明忽略大小写进行匹配,结果,匹配成功。

注意:使用正则表达式匹配字符串时,正则表达式不能加双引号。

JavaScript search正则搜索总结

在 JavaScript 中,search 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。