`
a19905522
  • 浏览: 99238 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

javascript exec match 区别

    博客分类:
  • JS
 
阅读更多

在js中,在查找替换时经常使用到exec 和 match ,

两者的区别是,exec是正则RegExp提供的方法,match是字符串对象string提供的方法,两者返回值都为一个数组对象

exec方法只进行一次匹配,返回的数组对象的第一个为匹配到得字符串,假如正则表达式中存在括号即分组,第二个以后便依次返回分组匹配

 

match 在没有g属性即全局匹配时返回值跟exec没有分组的情况下返回值是一样的,即都返回第一个匹配,返回数组仅仅包含第一个匹配结果,

如果match存在g属性即全局匹配,那么match返回的数组为依次匹配到得结果,如下列子:

 

 

某些情况下exec返回的结果和match返回的结果一样:

如下的代码将弹出"cat2,at":

var str= "cat2,hat8" ;
var p=/c(at)\d/;
alert(p.exec(str))

其中第一个元素是匹配的字符串"cat2",之后的元素是括号中匹配的"at"。

-------------------------------------------

 

 

 

match函数在满足如下条件下将越俎代庖,实现和exec一样的功能:

1、正则表达式中含有分组(括号)
2、返回唯一的匹配

且看如下的代码:

var str= "cat2,hat8" ;
var p=/c(at)\d/;
alert(p.exec(str))
alert(str.match(p))

都将弹出消息"cat2,at",是不是觉得很奇怪呢?

 

分享到:
评论

相关推荐

    深化剖析javascript中的exec与match方法_.docx

    深化剖析javascript中的exec与match方法_.docx

    js正则表达exec与match的区别说明

    文章的主要内容是介绍JavaScript中正则表达式的两个常用方法exec和match的区别。对于经常需要处理文本匹配和数据提取的开发者来说,了解这两个方法的不同用法和返回值是十分重要的。 首先,exec方法是正则表达式...

    深入剖析javascript中的exec与match方法

    在这些方法中,exec和match是两个经常被用到的方法,它们都用于执行正则表达式的匹配操作,但各有特点和用法上的差异。 首先,我们来看exec方法。exec是正则表达式对象的一个方法,它接受一个字符串作为参数,并在...

    js正则表达式中test,exec,match方法的区别说明

    正则表达式中的test、exec和match方法是经常被使用的方法,它们各自有着不同的功能和用途,以下是对这三个方法区别的详细介绍。 首先,test方法主要用于检查一个字符串是否符合某个模式,并返回一个布尔值结果。...

    关于JS中match() 和 exec() 返回值和属性的测试.docx

    在JavaScript中,`match()`和`exec()`是处理正则表达式匹配的两个关键方法,它们主要用于在字符串中查找匹配特定模式的结果。虽然这两个方法在功能上有些相似,但它们的使用方式和返回值有所不同。 1. **match()**...

    js的正则test,match,exec详细解析.docx

    在JavaScript中,有三个主要的正则方法:`test()`、`match()`和`exec()`,它们各自有不同的用途和行为。 1. **`test()`方法**: - `test()`用于测试一个字符串是否符合某个正则表达式的模式。它返回一个布尔值,...

    js中exec、test、match、search、replace、split用法.docx

    以下是关于`exec`、`test`、`match`、`search`、`replace`和`split`这六个方法的详细解释。 1. `exec()`: - `exec()`方法用于在字符串中执行一个正则表达式搜索,并返回匹配的结果。如果找到匹配项,它会返回一个...

    常用javascript案例大全

    if (patrn.exec(temp) == null) { icount = icount + 1 } else { icount = icount + 2 } strre += temp } else { break } } return strre + "..." } ``` 2. 原生 JavaScript 获取域名主机 在 ...

    javascript 中String.match()与RegExp.exec()的区别说明

    JavaScript为开发者提供了String对象和RegExp对象来处理字符串匹配,其中String对象的match方法和RegExp对象的exec方法是实现正则表达式匹配的主要方式。两者在功能上有相似之处,也有明显的差异,以下详细说明。 ...

    JavaScript中exec函数用法实例分析

    需要注意的是,exec函数和match方法在某些情况下行为是相似的,但它们之间也存在区别。例如,exec总是返回捕获组信息,即使没有设置全局标志,而match方法在没有设置全局标志时不会返回捕获组信息。另外,exec是正则...

    JavaScript正则表达式exec/g实现多次循环用法示例

    标题和描述中提到了JavaScript正则表达式中exec方法和全局修饰符g的用法,并通过实例演示了如何使用它们来实现对字符串的多次循环匹配。在JavaScript中,正则表达式用于进行模式匹配和文本处理,而exec方法和全局...

    js中exec、test、match、search、replace、split用法

    以下是对`exec`、`test`、`match`、`search`、`replace`和`split`这六个方法的详细解释: 1. `exec()`: - `exec()`方法用于在字符串中执行一个正则表达式,返回一个数组,包含匹配的结果以及相关信息。如果匹配...

    JavaScript正则表达式小结(test|match|search|replace|split|exec)|angluo-javascript-172930.pdf

    JavaScript提供了六种与正则表达式相关的方法,分别对应于不同的应用场景:test、match、search、replace、split、exec。 1. test 方法:用于检测一个字符串是否匹配某个模式,如果字符串中有符合模式的子串返回 ...

    JavaScript核心对象参考手册

    6. **正则表达式RegExp**: `RegExp`对象用于处理正则表达式,`exec`和`test`用于匹配字符串,`match`、`search`和`split`在字符串操作中广泛应用正则表达式。 7. **对象操作Object**: `Object`对象提供了`keys`、`...

    关于JS中match() 和 exec() 返回值和属性的测试

    在JavaScript中,`match()` 和 `exec()` 都是用来处理字符串和正则表达式匹配的函数,但它们有一些关键的区别和特性。这篇文章将深入探讨这两个方法的返回值和相关属性。 首先,`match()` 是 String 对象的一个方法...

    javascript正则表达式全解析文档

    ### JavaScript正则表达式全解析 #### 正则表达式的定义与使用 在JavaScript中,正则表达式是一种用于处理字符串的强大工具。它允许我们执行复杂的字符串搜索和替换操作。正则表达式对象可以通过两种方式创建:一...

Global site tag (gtag.js) - Google Analytics