将特殊字符实体名称转换为实际符号

Converting special character entity name into actual symbols

本文关键字:符号 转换 特殊字符 实体      更新时间:2023-09-26

我得到一个json返回值为&<>"还有很多特别的角色。我想要一个通用的解决方案,将它们全部转换成它们的实际值,如& & & &我不想使用像下面这样的代码,因为将来会出现更多不同的符号

    $scope.oldNotification[i].shorttext=$scope.oldNotification[i].shorttext.replace(/&amp;/g, '&');
    $scope.oldNotification[i].shorttext=$scope.oldNotification[i].shorttext.replace(/&lt;/g, '<');
    $scope.oldNotification[i].shorttext=$scope.oldNotification[i].shorttext.replace(/&gt;/g, '>');
    $scope.oldNotification[i].shorttext=$scope.oldNotification[i].shorttext.replace(/&quot;/g, '"');
    $scope.oldNotification[i].shorttext=$scope.oldNotification[i].shorttext.replace(/&#039;/g, "'");

是否有任何api来处理这些值并将它们转换为实际值?我用的是angularJs

因为你使用的是angular,所以你可以使用jQuery。

用jQuery创建一个元素,然后使用text()属性解析它

var str = $( "<span>&quotDale ca&ntilde;a&quot&#169;</span>" ).text();
console.log(str);

输出为"Dale caña"©

您需要将字符串放在有效的html标记中,例如'<span>'+yourtext+'</span>'

<<h2> 小提琴演示/strong>

点击"打开浏览器的控制台

找到答案了…

$scope.oldNotification[i].shorttext=$('<textarea />').html($scope.oldNotification[i].shorttext).text();