gpt4 book ai didi

javascript - 正则表达式获取标签之间的每个字符

转载 作者:行者123 更新时间:2023-11-30 15:10:37 24 4
gpt4 key购买 nike

apple man <span field="apply to|1232sdsdf_nsdnfnln|Data" contenteditable="false"> open the door.

在这里,我想将字段属性分隔为 'apply to', '1232sdsdf_nsdnfnln', 'data'并将其添加到另一个标签,如 <data="apply to" value="1232sdsdf_nsdnfnln'">

这是我现在使用的正则表达式 <span\s+(?:[^>]*?\s+)?field="([^"]*)"\scontenteditable="([^"]*)">它给出的输出组 1 为 apply to|1232sdsdf_nsdnfnln|Data

最佳答案

所以只需拆分结果组:

var str = "apply to|1232sdsdf_nsdnfnln|Data";
var res = str.split("|");

console.log(res);
// Array [ "apply to", "1232sdsdf_nsdnfnln", "Data" ]

或者...

var res = group1.split("|");

然后用它做任何你想做的事。

所以正则表达式可能看起来像这样:

const regex = /<span\s+(?:[^>]*?\s+)?field="([^"]*)"\scontenteditable="([^"]*)">/g;
const tag = `apple man <span field="apply to|1232sdsdf_nsdnfnln|Data" contenteditable="false"> open the door.`;
let m;

while ((m = regex.exec(tag)) !== null) {
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}

m.forEach((match, groupIndex) => {
if (groupIndex == 1) {
var res = match.split("|");
console.log(`<data="${res[0]}" value="${res[1]}">`);
}
});
}

结果:

<data="apply to" value="1232sdsdf_nsdnfnln">

演示:

https://jsfiddle.net/pheqfkwb/

关于javascript - 正则表达式获取标签之间的每个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45157426/

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