У меня есть следующий массив:
a
=> ["http://dominio-1-736865.com/path1",
"http://dominio-2-570941.com/path2",
"http://102.160.194.146/path4",
"http://142.231.2.110",
"http://142.231.2.110/path/inventado",
"http://dominio-3-468658.com/path2",
"http://dominio-3-468658.com/path2/path1",
"http://dominio-3-468658.com/path2/path2",
"http://subdominio.dominio-3-468658.com/path2",
"http://www.dominio-3-468658.com/path2",
"http://este-se-repite.re/AP-448055"]
Затем мне нужно сгруппировать следующим образом:
fqdns
=> ["dominio-1-736865.com", "dominio-2-570941.com", "102.160.194.146", "142.231.2.110", "dominio-3-468658.com", "subdominio.dominio-3-468658.com", "este-se-repite.re"]
получить это =
["http://dominio-1-736865.com/path1"]
["http://dominio-2-570941.com/path2"]
["http://102.160.194.146/path4"]
["http://142.231.2.110", "http://142.231.2.110/path/inventado"]
["http://dominio-3-468658.com/path2", "http://dominio-3-468658.com/path2/path1", "http://dominio-3-468658.com/path2/path2", "http://www.dominio-3-468658.com/path2"]
["http://subdominio.dominio-3-468658.com/path2"]
["http://este-se-repite.re/AP-448055"]
Проблема в том,с subdominio.dominio-3-468658.com и dominio3-468658.com, это может быть в два, но мне нужно встретиться только в том, который имеет поддомен.как можно добиться этого в ruby
[25] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[1])}
=> [nil, #<MatchData "dominio-2-570941.com">, nil, nil, nil, nil, nil, nil, nil, nil, nil]
[26] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[0])}
=> [#<MatchData "dominio-1-736865.com">, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]
[27] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[2])}
=> [nil, nil, #<MatchData "102.160.194.146">, nil, nil, nil, nil, nil, nil, nil, nil]
[28] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[3])}
=> [nil, nil, nil, #<MatchData "142.231.2.110">, #<MatchData "142.231.2.110">, nil, nil, nil, nil, nil, nil]
[29] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[4])}
=> [nil, nil, nil, nil, nil, #<MatchData "dominio-3-468658.com">, #<MatchData "dominio-3-468658.com">, #<MatchData "dominio-3-468658.com">, #<MatchData "dominio-3-468658.com">, #<MatchData "dominio-3-468658.com">, nil]
[30] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[5])}
=> [nil, nil, nil, nil, nil, nil, nil, nil, #<MatchData "subdominio.dominio-3-468658.com">, nil, nil]
[31] pry(#<Notifications::Notification>)> a.map{|d| d.match(fqdns[6])}
=> [nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, #<MatchData "este-se-repite.re">]