Javascript 为什么这个正则表达式需要这么长时间才能执行?
我创建了Javascript 为什么这个正则表达式需要这么长时间才能执行?,javascript,regex,performance,Javascript,Regex,Performance,我创建了regex,它应该将文本移动到相邻标记的内部 const fix = (string) => string.replace(/([\S]+)*<span([^<]+)*>(.*?)<\/span>([\S]+)*/g, "<span$2>$1$3$4</span>") fix('<p>Given <span class="label">Butter</span>'s game
regex
,它应该将文本移动到相邻
标记的内部
const fix = (string) => string.replace(/([\S]+)*<span([^<]+)*>(.*?)<\/span>([\S]+)*/g, "<span$2>$1$3$4</span>")
fix('<p>Given <span class="label">Butter</span>'s game, the tree counts as more than one input.</p>')
// Results in:
'<p>Given <span class="label">Butter's</span> game, the tree counts as more than one input.</p>'
const fix=(string)=>string。替换(/([\S]+)*([\S]+)*
和([^([\S]+)*
和([^HTML)用regex解析?Hmm。如果你只关心span
使用这个:-我也看到([^还有一件事:-如果
不存在,你的正则表达式将出现灾难性的回溯。不要这样做是最好的答案。使用正则表达式的任何.HTML解析?嗯。如果你只关心span
使用这个:-我也看到([^还有一件事:-如果
不存在,你的正则表达式将出现灾难性的回溯。不要这样做是最好的答案。使用任何一个。知道如何修复它吗?@demux我正在写它。重点是将接触span
的文本移动到span
中,所以不,我不仅仅关心contents@demux那你呢可以使用第二个与捕获groups@demux你想在span标记中移动给定的和&39;s
吗?知道如何修复吗?@demux我写它的目的是将与span
接触的文本移动到span
,所以不,我不仅仅关心contents@demux然后你可以使用s第二个是捕获groups@demux是否要在span标记内移动给定的和&s
?
([\S]*)<span([^<]*)>(.*?)<\/span>([\S]*)
(\S*)<span([^<]*)>(.*?)<\/span>(\S*)
<span([^<]*)>(.*?)<\/span>