我有一套如下:
verb_tag_set = Set.new ["VB", "VBD", "VBG", "VBN", "VBP", "VBZ", "MD"]
我的agged_text数组包含以下内容:
tagged_text = [["VB", "go"], ["VBG", "going"]]
我试图通过选择那些包含与verb_tag_set中的一项相匹配的元素的数组来获取每个数组第二行的所有元素。
verb_tagged_array = tagged_text.select{|el| el[1] if verb_tag_set.include?(el[0])}
verb_tagged_array.map{|row| row[1]}
尽管这行得通,但我应该能够在一行中获得该数组。
关于如何完善此代码的任何想法?
红宝石的NOOB,所以任何帮助表示赞赏。
似乎您需要以下内容。
require 'set'
verb_tag_set = Set.new ["VB", "VBD", "VBG", "VBN", "VBP", "VBZ", "MD"]
tagged_text = [["VB", "go"], ["VBG", "going"]]
tagged_text.select { |a,b| verb_tag_set.include?(a) }.map(&:last)
#=> ["go", "going"]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句