gpt4 book ai didi

javascript - 尝试使用 AngularJS 自定义过滤器从文本 block 中提取数字

转载 作者:行者123 更新时间:2023-11-28 00:10:19 25 4
gpt4 key购买 nike

我想创建一个过滤器,它将从文本框中的文本中提取数字。例如:

用户类型:猫去了4家商店,花了1美元买了3袋猫砂。

结果为:[4, 3, 1]

过滤器将看到由于先前的过滤器 ['the', 'cat', 'went', 'to', '4' ...]

所以我试图创建一个 for 循环,它将遍历数组并检查每个项目以查看它是否确实是一个数字。但是,当未注释掉 for 循环时,它会破坏应用程序。如有任何帮助,我们将不胜感激。

filter('showNum', function() {    
// this filter is not complete but it will return only numbers from an array
return function isNumeric(title){
var numbers, i, len, numberToAdd;
numbers = [];
len = title.length;

// for(i=0; i<len; i+=1){
// numberToAdd = title[i];
// if(!isNAN(numberToAdd)===False); {numbers.push(numberToAdd);}
return numbers;
};

})

最佳答案

我会将过滤器更改为 like this :

javascript

.filter('showNum', function() {
return function(input) {

if (!input)
{
return [];
}

return input
.split(' ')
.filter(function(item){
return item && !isNaN(item);
})
.map(function(item){
return parseInt(item);
})

};
});

html

  <body ng-controller="MainCtrl">
<input type="text" ng-model="input">
<p>result: {{ input | showNum }}</p>
</body>
<小时/>

enter image description here

http://plnkr.co/edit/Hp91dIXbThzvnwzIFbVn?p=preview

关于javascript - 尝试使用 AngularJS 自定义过滤器从文本 block 中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30954528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com