如果不是從數組中刪除重複的元素,我想刪除具有特定屬性的元素?參數化數組#uniq(即,uniq_by)
具體來說,我想從數組中刪除所有的字符串重複的「本質」,在本質上是這樣定義的:
class String
def essence
downcase.gsub('&', 'and').gsub(/[^a-z0-9]/, '')
end
end
我想是這樣的:
['a', 'A', 'b'].uniq_by(&:essence)
# => ['a', 'b'] (or ['A', 'b']; I don't really care)
有什麼最好的方法來完成這個?
嘿,只是想評論說你實際上可以做'group_by(&:essence)',這樣如果你想更新你的答案,你可以! – 2016-04-13 22:06:05