字符串用javascript数组中的逗号替换“<br>↵”

Posted

技术标签:

【中文标题】字符串用javascript数组中的逗号替换“<br>↵”【英文标题】:String replace "<br>↵" with commas in javascript array 【发布时间】:2017-04-20 12:18:28 【问题描述】:

当我将数组打印到控制台时,我得到以下符号:“&lt;br&gt;↵

如何在 JS 数组中用逗号替换“&lt;br&gt;↵”的所有实例?

例如

["767 5th Ave<br>↵New York, NY 10153, USA", "677 5th Ave<br>↵New York, NY 10022, USA"]

["767 5th Ave, New York, NY 10153, USA", "677 5th Ave, New York, NY 10022, USA"]

值取自:

<address class="main">
  <p>767 5th Ave<br>
  New York, NY 10153, USA</p>
</address>

使用以下代码:

$("address.main p:not(:empty)").each(function() 
  addresses_google[0].push( $(this).html() );
);

【问题讨论】:

所以循环它并对每个索引进行字符串替换 【参考方案1】:

var addresses = ["767 5th Ave<br>↵New York, NY 10153, USA", "677 5th Ave<br>↵New York, NY 10022, USA"];

var formattedAddresses = addresses.map(function(str) 
  return str.replace(/<br>\u21b5/g, ", ");
);

console.log(formattedAddresses);

更新:

似乎有 html 通过换行符(解释为 ↵ 符号,用于可视化换行符)与普通字符串文字一起被推入此数组。

$("address.main p:not(:empty)").each(function()  
  addresses_google[0].push( $(this).html() );
);

现在我们知道这是循环的结果,我们可以在循环的代码块中完成这一切,甚至不需要创建一个新数组:

$("address.main p:not(:empty)").each(function() 
  var breaks = /<br>(\r\n|\n|\r)/gm;
  var formattedHTML = this.innerHTML.replace(breaks, ', ');

  addresses_google[0].push(formattedHTML);
);

【讨论】:

我得到完全相同的输出。 还是一样! 运行我的 sn-p 时你看到了什么? 返回完全相同的数组 可能需要解决您希望更改的特定角色,但听起来@CarlEdwards 有一个很好的解决方案。

以上是关于字符串用javascript数组中的逗号替换“<br>↵”的主要内容,如果未能解决你的问题,请参考以下文章

用括号和逗号替换字符串中的逗号(如果它们不存在)

如何使用php用“and”替换字符串中的最后一个逗号?

用记事本++中的正则表达式替换引号中的所有逗号

如何用另一个数组值替换javascript中的数组值?

js中数组中元素之间的逗号如何去掉

用 TextField 中的小数分隔符替换逗号