我还是新手,所以请耐心等待。我有一个子串数组和一个包含子串和字符串的哈希。
substrings = ["sub1", "sub2", "sub3",...etc.]
hash = {"sub1"=>"string1", "sub2"=>"string2", "sub3"=>"string3"...}
例如,哈希值可能是"ount"=>"country"
。我想从我的数组中提取"ount"
,然后输出"country"
作为"ount"
键的值来查找。我想为数组中的每个子字符串执行此操作。
每个子字符串只有一个字符串。这两个列表都是按字母顺序排列的,因此在找到它们时停止并移动到下一个列表是可以的。我可以找到项目的计数,但宁愿把它做为迭代,所以它是可重用的代码,如果这是有道理的。
答案 0 :(得分:-1)
substrings = ["sub1", "sub2", "sub3"]
hash = {"sub1"=>"string1", "sub2"=>"string2", "sub3"=>"string3"}
如果要在子字符串中打印每个元素的值
substrings.each do |str|
p "value of #{str} is #{hash[str]}" if hash.has_key?(str)
end
#output
"value of sub1 is string1"
"value of sub2 is string2"
"value of sub3 is string3"
如果要打印特定给定子字符串的值
def find_value(str,hash)
"value of #{str} is #{hash[str]}" if hash.has_key?(str)
end
p find_value("sub1",hash)
#Output
"value of sub1 is string1"