我有以下html标记(这是自定义的):
<meltdown-code data-lang="HTML">
<span><br>
<p>Hi</p><br>
</span><br>
</meltdown-code>很简单。现在,我试图使HTML标记显示为纯文本,而不是作为单独的元素呈现。为此,我将所有的<替换为<,将所有的>替换为>
tagHTML.replace(/</g, '<')问题:这也取代了<br> 标记,后者不会创建新行。这是解决方案,在一个完美的世界:
tagHTML.replace(/</g, '<', {exceptions: '<br>'})很明显,事情不是这样的。任何帮助都是非常感谢的。
谢谢!
发布于 2022-09-24 23:28:07
在匹配<br>之前对<进行负展望。
const text = `<meltdown-code data-lang="HTML">
<span><br>
<p>Hi</p><br>
</span><br>
</meltdown-code>`;
const output = text.replace(/(?!<br>)<([^>]+)>/g, '<$1$gt;');
console.log(output);<code></code>
https://stackoverflow.com/questions/73841171
复制相似问题