这是我试图解决的以下问题。我将说明我是如何做到的,并且我正在寻找一种不太复杂(并且更简洁:P)的方法。
给定这样的输入:
第一次输入
1 soccer ball costs 30
1 piano costs 500
1 guitars costs 200
第二输入
1 luxury bottle of whiskey costs 10.20
1 package of luxury caviar costs 53
我想计算每行的最终价格和每个输入的最终价格。为了计算每条线的最终价格,我考虑到:
- 如果处理的项目与运动有关,我想加 2(所以第一行是 32)。如果是音乐项目,我想加 4(所以第二行是 504)。
- 如果处理的项目与食物相关,我想加 5(所以第二个输入的两行都会增加 5)。
- 如果加工的商品是奢侈品,我想加10。
我在一件事上遇到了麻烦:
- 识别并映射特定行中的项目类型。
使用正则表达式,我能够找到应该是项目的那部分行:
soccer ball
piano
guitars
bottle of whisky
package of caviar
我知道这可能是一个非常通才的问题,但我想知道什么是找到每个项目的好方法的好方法。
现在我有一个这样的结构:
{"soccer" => "sports", "piano" => "music", "guitars" => "music", "whisky" => "food", "caviar" => "food"}
然后我尝试将我的哈希的任何键与特定行中的项目匹配。你能想出更好的方法、API 或任何可以降低复杂性的方法吗?