首页 > web前端 > js教程 > 如何使用 RegExp.exec() 从字符串中提取所有匹配项?

如何使用 RegExp.exec() 从字符串中提取所有匹配项?

Susan Sarandon
发布: 2024-12-18 06:00:15
原创
337 人浏览过

How to Extract All Matches from a String Using RegExp.exec()?

RegExp 使用 RegExp.exec 提取多个匹配

要使用 RegExp.exec 从字符串中提取所有匹配,您可以继续调用 re循环中的.exec(s)。以下代码片段演示了这一点:

var re = /\s*([^[:]+):\"([^"]+)"/g;
var s = '[description:"aoeu" uuid:"123sth"]';
var m;

do {
    m = re.exec(s);
    if (m) {
        console.log(m[1], m[2]);
    }
} while (m);
登录后复制

使用提供的测试字符串 '[description:"aoeu" uuid:"123sth"]',此代码将输出:

description aoeu
uuid 123sth
登录后复制

请注意,这里使用的正则表达式:

  • s*:匹配周围的可选空格colon.
  • ([^[:] ): 匹配任何非空白序列作为键。
  • :: 匹配文字冒号。
  • ("([^ "] )":将值匹配为用双引号括起来的任何非双引号序列。

要测试此解决方案,您可以使用提供的 JSFiddle 链接:https://jsfiddle.net/7yS2V/。

以上是如何使用 RegExp.exec() 从字符串中提取所有匹配项?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板