首页 > 解决方案 > 从 HTML 字符串替换样式标记内的双引号以在 DOM 中正确呈现

问题描述

给定一个 HTML 字符串,例如:varstr = "<span style="font-family: "Comic Sans MS"; font-size:10px">retesting font</span>"

我想将其转换为:var str = "<span style="font-family:Comic Sans MS; font-size:10px">retesting font</span>"

在上面的第一行中需要删除字体系列中提到的双引号,以便它符合第二行中提到的预期结果并在 DOM 中呈现。

标签: javascripthtmlregex

解决方案


const str1 = `<span style="font-family: "Comic Sans MS"; font-size:10px">retesting font</span>`

const str2 = `<p><span style="font-family: "Arial Black", "Arial Bold", Gadget, sans-serif; font-size: 12pt;">Arjun</p>`

function convert(str) {
  return str.replace(/(?<!=)"(?!>)/g,"");
}

console.log(convert(str1));
console.log(convert(str2));


推荐阅读