我需要帮助,看起来很简单,但让我困惑。试图编写一些模糊匹配方法来处理根据需要计算什么值与实际上可从选择列表中获得的格式之间的差异。如何在数组数组中寻找最佳匹配元素?
价值(期权执行价)总是一个计算浮点数,如85.0
或Int。
该数组包含字符串形式的数字,在任一增量或它们是否将被显示舍入到一些小数(包括额外的零象5.50
)不可预测的或没有小数(如85
),例如:
select_list = ["77.5", "80", "82.5", "85", "87.5", "90", "95", "100", "105"]
我不确定如何编写简单的一行或两行代码,它将返回数组中出现的最接近的匹配元素(按数字值)。例如,如果select_list.contains? 85.0
返回"85"
其实,选择选项来自Watir::Webdriver browser.select_list(:id, "lstStrike0_1")
HTML对象,其可视文本(而不是HTML值)是这些数字;也许有一种更直接的方法可以直接调用browser.select_list(:id, "lstStrike0_1").select X
,而不必在Watir中弄清楚如何将所有这些选择转换为Ruby数组?
另一个问题http://stackoverflow.com/q/6358860/1069375的最佳方式照亮我如何很容易地转换所述的Watir select_list中成所需的数组:'selectContent = browser.select_list(:ID, “lstStrike0_1”)。options.map(&:文本)' – Marcos 2012-07-13 19:42:44