gpt4 book ai didi

javascript - 如何做多个正则表达式,每次都细化结果?

转载 作者:行者123 更新时间:2023-11-30 23:51:16 25 4
gpt4 key购买 nike

为什么我不能将正则表达式输出到变量,然后再次对其运行正则表达式?

我正在编写一个greasemonkey javascript,它获取一些原始数据,对其运行一些正则表达式,然后对其运行更多正则表达式以优化结果:

// I tried this on :: http://stackoverflow.com/
var tagsraw = (document.getElementById("subheader").innerHTML);
alert(tagsraw);

获取原始数据(上面的代码)有效

var trimone = tagsraw.match(/title\W\W\w+\s\w+\s\w+\s\w+\s\w+/g);
alert(trimone);

运行正则表达式一次有效(上面的代码);但运行(下面的代码)不会?

var trimtwo = trimone.match(/\s\w+\s\w+\s\w+\s\w+/g);
alert(trimtwo);

有人可以告诉我我的代码/方法有什么问题吗?

最佳答案

第一个匹配有效的原因是innerHTML 返回一个字符串。

但是匹配返回一个数组,因此将其视为一个:

for (var i=0; i<trimone.length; i++)
{
var trimtwo = trimone[i].match(/\s\w+\s\w+\s\w+\s\w+/g);
alert(trimtwo);
}

编辑:

尝试一下这个代码,我认为这更接近你想要实现的目标:

var trimone = tagsraw.match(/title\s*=\s*".*"/g);
alert(trimone);

for (var i=0; i<trimone.length; i++)
{
alert(trimone[i]);
}

关于javascript - 如何做多个正则表达式,每次都细化结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1473820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com