繁体   English   中英

通过最后3个字母从数组中获取独特的事件

[英]Get unique occurancies from array by last 3 letters

是否有一些有效的方法可以获得具有相同三个最后字母的哈希数组中的所有字段值的值?

我有这样一个数组:

array = [
    {
        :code => 'R01L01'
    },
    {
        :code => 'R02ZZZ'
    },
    {
        :code => 'A03ZZZ'
    },
    {
        :code => 'A04L01'
    },
    {
        :code => 'D11ZZZ'
    },
    {
        :code => 'D22DAR'
    },
]

作为回应我想要R01L01,R02ZZZ,D22DAR,所以我将有最后三个字母的唯一代码。

array.
  flat_map(&:values).
  group_by { |e| e[/.{3}\z/] }. # or e[-3..-1], see comments
  map { |_, v| v.first }
#⇒ ["R01L01", "R02ZZZ", "D22DAR"]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM