这是我想要实现的演示版本:
我有很多strings
与这些相似:
我想使用循环和正则表达式从这些句子中获取数据。数据,如产品名称(apples
,oranges
,其他)和价格(1.5-3
; 2-3
)。
对于每个循环,我会推送到product
和price
等数组。
这样做的正确方法是什么?
注意:只能有苹果和橙子,程序知道。
注意:预期输出是两个包含产品和数字的数组。
感谢您的建议!
答案 0 :(得分:1)
我想你需要这样的东西:
var str = "Usually I buy apples for a 1.5-3 dollars.", array = [];
array.push(str.match(/apple|orange/)[0] + 's'); // fruit
array.push(str.match(/[\d\.]+\D+\d+/)[0].replace(/[^\.\d]+/g,"-")); // price
console.log(array); // result