鉴于此:
<span ng-repeat="extra in extras">
<br>
<input type="checkbox" ng-click="addExtra()" value="{{extra.id}}" >{{extra.name}} - <strong>{{extra.real_price}}</strong>
</span>
如何使{{extra.real_price}}仅使用过滤器输出数字?
实施例: extra.real_price是'从400€'转换为'400'
答案 0 :(得分:2)
您可以使用正则表达式删除除数字字符以外的所有字符:
app.filter('onlyNumbers', function () {
return function (item) {
return item.replace(/[^\d|^,|^.]/g, '');
}
});
可以读取正则表达式:替换所有不是数字的字符,也不能替换逗号和点。
请注意,当您使用货币值时,点和逗号都应为可接受的值。
以下是使用和输出的一些示例:
{{ '23345€' | onlyNumbers }} => 23345
{{ '$23345' | onlyNumbers }} => 23345
{{ '$23345.00' | onlyNumbers }} => 23345.00
{{ '23345,00 €' | onlyNumbers }} => 23345,00