定义和用法

match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。

语法

stringObject.match(searchvalue)
stringObject.match(regexp)
参数 描述
searchvalue 必需。规定要检索的字符串值。
regexp 必需。规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。

返回值

存放匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标志 g。

说明

match() 方法将检索字符串 stringObject,以找到一个或多个与 regexp 匹配的文本。这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。

如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。该数组的第 0 个元素存放的是匹配文本,而其余的元素存放的是与正则表达式的子表达式匹配的文本。除了这些常规的数组元素之外,返回的数组还含有两个对象属性。 index 属性声明的是匹配文本的起始字符在 stringObject 中的位置,input 属性声明的是对 stringObject 的引用。

如果 regexp 具有标志 g,则 match() 方法将执行全局检索,找到 stringObject 中的所有匹配子字符串。若没有找到任何匹配的子串,则返回 null。如果找到了一个或多个匹配子串,则返回一个数组。不过全局匹配返回的数组的内容与前者大不相同,它的数组元素中存放的是 stringObject 中所有的匹配子串,而且也没有 index 属性或 input 属性。

注意:在全局检索模式下,match() 即不提供与子表达式匹配的文本的信息,也不声明每个匹配子串的位置。如果您需要这些全局检索的信息,可以使用 RegExp.exec()。

实例

例子 1

在本例中,我们将在 "Hello world!" 中进行不同的检索:

<script type="text/javascript">var str="Hello world!"
document.write(str.match("world") + "<br />")
document.write(str.match("World") + "<br />")
document.write(str.match("worlld") + "<br />")
document.write(str.match("world!"))</script>

输出:

world
null
null
world!

例子 2

在本例中,我们将使用全局匹配的正则表达式来检索字符串中的所有数字:

<script type="text/javascript">var str="1 plus 2 equal 3"
document.write(str.match(/\d+/g))</script>

输出:

1,2,3

TIY

match() 1
如何使用 match() 来检索一个字符串。
match() 2
如何使用 match() 来检索一个正则表达式的匹配。

JavaScript之match()方法讲解相关推荐

  1. JavaScript之substring()方法讲解

    定义和用法 substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法 stringObject.substring(start,stop) 参数 描述 start 必需.一个非负 ...

  2. JavaScript的replace方法与正则表达式结合应用讲解

    大家好!!今晚在华软G43*宿舍没什么事做,把javascript中replace方法讲解一下,如果讲得不对或不合理是情理之中的事,因为我不是老鸟,也不是菜鸟,我也不知道我当底是什么鸟??呵~~ re ...

  3. JS学习之路之JavaScript match() 方法

    match() 方法,在字符串内找到相应的值并返回这些值,()内匹配字符串或者正则表达式. 该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置. d ...

  4. 深入javascript中的exec与match方法

    视频课堂https://edu.csdn.net/course/play/7621 经典面试题,如果知晓一下题目的答案,那就没有必要往下看了. var someText="web2.0 .n ...

  5. JavaScript match()方法使用

    1.JavaScript match() 方法说明 http://www.w3school.com.cn/jsref/jsref_match.asp 写法: stringObject.match(se ...

  6. javascript中match方法和exec()方法详解与深度区别(非原创)

    match和exec的比较 1.match match方法属于String正则表达方法.  语法: str.match(regexp或者string) str:要进行匹配的字符串. regexp:一个 ...

  7. JavaScript中matches和match方法

    matches 主要是用来判断当前DOW节点是否能完全匹配对应的CSS选择器,如果匹配成功,返回true,反之则返回false 语法如下: element.mathces(seletor); 这个方法 ...

  8. 改变图像,运用match方法判断

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. js match()方法

    JavaScript中match函数方法是使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回.使用方法: stringObj.match(rgExp) 其中stringObj是必选项. ...

最新文章

  1. access突然需要登录_早知道早好,微信小程序登录开发需要注意的事项
  2. Java学习总结:2
  3. ffmpeg text relocations
  4. urb数据结构【转】
  5. 收藏一个在线思维导图的制作网站
  6. C语言 文件读写 EOF - C语言零基础入门教程
  7. 风靡朋友圈的HTML5游戏去哪了
  8. 手动创建一个标准web工程
  9. iFrame can't save session cookie
  10. python six库安装_Python 安装matplotlib,six,dateutil,pyparsing 完整过程
  11. 使用EditPlus运行C/C++
  12. 如何在通达信软件上随意画图_怎样在通达信软件中加入写字画箭头的涂画工具?...
  13. 呼叫次数软件_如何以软件工程师的身份进行首次呼叫轮换
  14. 解决电脑启动蓝屏出现Recovery—错误代码0xc000014
  15. Windows7下OEM中证书错误,导航已阻止解决办法
  16. 模型小常识,C4D扫描的使用
  17. 【华为认证视频会议工程师HCIA-Video Conference V3.0正式发布】
  18. linux后台挂起、恢复进程相关命令
  19. WiFi手机可以连接,电脑上也能连接,可以微信聊天,但是不能浏览器上网怎么解决?
  20. 20200330王者荣耀服务器维修,2020王者荣耀1月9日更新官方公告及内容汇总

热门文章

  1. Review meeting还开不开?
  2. CruiseControl日构建简单配置
  3. 目标驱动的软件度量(选译)
  4. html 如何让div刷新页面,页面刷新.html
  5. Java编写抓取用户信息代码_[代码全屏查看]-一个基于JAVA的知乎爬虫,抓取知乎用户基本信息...
  6. java静态和动态的区别是什么意思_Java中的动态和静态多态性有什么区别?
  7. 四部门联合印发《常见类型移动互联网应用程序必要个人信息范围规定》
  8. 2018 中国准独角兽 TOP 50 夏榜发布!146 家投资机构、227 家企业参与
  9. 自定义SpringBoot项目的Maven原型
  10. SQLServer之创建数据库架构