如何将单个html标签与特殊src匹配?

我的正则表达式在线地址:https://regex101.com/r/JSPy5Z/1

我想用一个空字符串替换<link rel="stylesheet" href="/dist/abcd.css" />内容中的abcd.css

输入:<link ref="stylesheet" href="/dist/qwefqwefqwef.css" /><link ref="stylesheet" href="/dist/abcd.css" />

输出:<link ref="stylesheet" href="/dist/qwefqwefqwef.css" />

如何将单个html标签与特殊src匹配?

xuzaizhan 回答:如何将单个html标签与特殊src匹配?

使用以下正则表达式进行匹配,然后将其替换为空字符串:

<link[^>]*href="\S*abcd\.css"[\s\S]*\/>

两个主要变化:

  1. 您的[^>]放错了位置。现在,它仅捕获单个link标签。
  2. 在这种情况下,不需要捕获组,因此我将其删除。

Demo

,

我将您链接中的ref更改为rel,这是正确的属性名称。如果我了解您要做什么,这应该对您有用。

const
  links = `<link rel="stylesheet" href="/dist/qwefqwefqwef.css" /><link rel="stylesheet" href="/dist/abcd.css" />`,content = `abcd`,// set this to whatever you want to filter out
  re = RegExp(String.raw`<link rel="[^"]*" href="[^"]*?${content}\.css" />`);

console.log(`regular expression: ${re}`);
console.log(`output: ${links.replace(re,``)}`);

本文链接:https://www.f2er.com/3154755.html

大家都在问