【问题标题】:How to replace multiple instances of <br/> tags with something else in string in javascript?如何在javascript中用字符串中的其他内容替换<br/>标签的多个实例?
【发布时间】:2019-12-11 12:23:50
【问题描述】:

我有一个变量:

var test = "Hello<br/><br/>World";

我想要一个可以用换行符替换那些的函数,结果是:

Hello

World

我尝试使用:

test = test.replace('<br/>','\r\n');

但是,这只是替换了
的一次出现,而不是全部替换。我想确保它替换文本中所有出现的
,无论它们是彼此相邻,还是它们位于同一字符串的不同部分。

【问题讨论】:

  • 你可以使用全局正则表达式来代替test.replace(/\&lt;br\/\&gt;/g,'\r\n');

标签: javascript typescript


【解决方案1】:

当您在替换函数中使用字符串作为模式时,它只会替换第一次出现的位置。您需要使用带有g 标志的正则表达式模式

var test = "Hello<br/><br/>World";

test = test.replace(/<br\/>/g,'\r\n');

console.log(test)

replaceAll 的提议,您可以在其中使用字符串作为模式并替换所有出现的地方

【讨论】:

  • 由于某种原因这对我不起作用,是因为我使用的是打字稿吗?
  • @Rolando 它不应该与打字稿有任何区别,你能把你的打字稿或小提琴贴在你能够重现错误的地方吗?
【解决方案2】:

尝试使用这个:

var test = "Hello<br/><br/>World";
test = test.replace(/<[^>]*>/g, '\r\n');
console.log(test)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多