首页 > 解决方案 > Javascript替换两个连续的标签

问题描述

我正在构建一个 React 应用程序,但遇到以下问题:我的文本编辑器在某些 html 语法上失败。包装本身不是很好,所以是的。

我想要实现的是将以下语法 <p><p> hey </p></p>转换为<p> hey </p>

我试图做类似的事情,text.replace(/<p><p>/g, '<p>')但它不是一个有效的语法。

标签: javascriptreactjs

解决方案


const str = '<p><p> hey </p></p>'

const result = str.replace(/<p><p>/g, '<p>').replace(/<\/p><\/p>/g, '</p>')

console.log(result)

或使用单个正则表达式:

const str = '<p><p> hey </p></p>'

const result = /.*(<p>.*?<\/p>).*/g.exec(str)[1]

console.log(result)


推荐阅读