我想檢查包含一個或多個匹配字符串的字符串數組。紅寶石字符串 - 檢查一組字符串匹配
目前我正在通過使用if語句來做到這一點 - 不好,但它的工作原理 - 但現在我正在尋找更類似Ruby的方式來做到這一點。
row[:datapoints].each do |data|
if data[:direction].include? "Beusselstr"
data[:image] = "category-1"
end
if data[:direction].include? "Ostkreuz"
data[:image] = "category-1"
end
if data[:direction].include? "Westend"
data[:image] = "category-2"
end
if data[:direction].include? "1)S Gr"
data[:image] = "category-3"
end
end
取而代之,我想將匹配的字符串存儲在數組中。爲了讓它更復雜一點,我實際上有不同類別的匹配項與他們自己的結果操作(請參閱數據[:image]值的類別特定分配)。
category_1_keywords = ["Beusselstr","Ostkreuz"]
category_2_keywords = ["nefeld Bhf","Greifswalder","Westend"]
category_3_keywords = ["1)S Gr"]
imagecategories = {:category_1 => category_1_keywords,:category_2 => category_2_keywords,:category_3 => category_3_keywords}
如何將過濾該陣列:使用這樣的匹配陣列(imagecategories)看起來像(行[數據點])?
最後一部分不清晰,比如'category_1_keywords','category_2_keywords'等。 –
基本上我想使用包含具有類別特定關鍵字/匹配項(類別_..._關鍵字)的數組的數組(imagecategories)。我是Ruby的初學者。也許有更好的方法來構建包含術語和類別的搜索對象結構。 – Bernd
你最終的目標是什麼,舉一些例子。 –