首页 > 解决方案 > 如何在Ruby中拒绝也包含哈希的数组中的元素?

问题描述

例如:

hash_var = ["1", "2", {"a" => ["aa", "bb", "cc"]}]
reject(hash_var, "1")             # should return ["2", {"a" => ["aa", "bb", "cc"]}]
reject(hash_var, "a")             # should return ["1", "2"]
reject(hash_var, {"a" => ["aa"]}) # should return ["2", {"a" => ["bb", "cc"]}]

基本上,我应该能够拒绝数组中的元素,无论是哈希还是数组元素。

标签: arraysruby-on-railsrubyhash

解决方案


您可以在哈希上使用删除方法,例如

hash_var = ["1", "2", {"a" => ["aa", "bb", "cc"]}]
hash_var.delete("1") //this will delete 1 from hash then new value of hash will be ["2", {"a"=>["aa", "bb", "cc"]}]
hash_var[1]["a"].delete("aa") //this will give output ["2", {"a"=>["bb", "cc"]}]

等等根据你的使用


推荐阅读