替换数组Javascript

时间:2017-04-14 19:47:25

标签: javascript jquery font-awesome

我想用jquery

替换这样的东西
['{star}'],['{heart}'],['{call}']

每当在 BODY 中我们获得{star}时,请将其替换为



<i class="fa fa-star"></i>
&#13;
&#13;
&#13;

或{hear} {call}等

我该怎么做?

  

每个元素{star} =&gt; fa fa-star,{heart} =&gt; fa fa-heart

[编辑已解决]

&#13;
&#13;
var str = "{heart}{star}"
var updated = str.replace(/\{([^}]+)}/g, '<i class="fa fa-$1"></i>');
document.body.innerHTML = document.body.innerHTML.replace(/\{([^}]+)}/g, '<i class="fa fa-$1"></i>');
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

简单的正则表达式,以匹配{}

之间的任何内容

&#13;
&#13;
var str = "I {heart} to eat an {apple}"
var updated = str.replace(/\{([^}]+)}/g, '<i class="fa fa-$1"></i>');
console.log(updated);
&#13;
&#13;
&#13;

您也可以用已知字符串的ors替换它。