如何使用 angularjs 过滤器从字符串中删除制表符 (\t)?

How to remove tab character (\t) from string using angularjs filter?

我有一个从服务器收到的 html 数据作为字符串 我想从内容中删除 \t 制表符 我如何使用 angularjs 过滤器解决这个问题?使用下面的代码,当内容呈现为 UI.

时,我没有看到 \t 从内容中删除

filter.js

angular.module('App').filter('trusted', ['$sce', function ($sce) {
        return function(url) {
            var content = url.toString().replace('\t', '').split('\r\n');
            return $sce.trustAsResourceUrl(content);
        };
    }]);

main.html

<tr ng-repeat="item in showMessages | filter:searchStr">
    <td>{{item.filename}}</td>
    <td class="serverResults" ng-bind-html="item.value | highlight:searchStr| trusted">{{item.value}}</td>
</tr>

数据

<p style=\"text-align: left; font-size: 15px; line-height: 20px; font-family:ClearviewATT, Arial; color: #444444; margin:0; padding:0;\">\t\t\t\t\t\t\t\t\t\t\tError Code: \t\t\t\t\t\t\t\t\t\t\t[(*ErrorCode*)]\t\t\t\t\t\t\t\t\t\t</p>

在您的过滤器中您需要使用正则表达式

var content = url.toString().replace(/\t/g, '').split('\r\n').toString();

否则只会删除第一个 \t(第一次出现)

如果您想删除制表,则正则表达式将为(无双 \):

var content = url.toString().replace(/\t/g, '').split('\r\n').toString();

可以验证正则表达式here

https://jsfiddle.net 中尝试后,似乎 replace(/\t/g, '') 替换了 \t 和表格。