我有一个数组:
output = [["efg\r\n", "abc\r\n", "xyz\r\n", "mno\r\n", "end "]]
我需要排序并列出类似下面的内容,删除第一个和最后一个条目并删除"\r"
和"\n"
。
abc
xyz
mno
我尝试使用pop
和drop
,但他们没有帮助,因为整行都被视为第一个数组(例如:output[1][0]
会给"efg\r\n"
)。
答案 0 :(得分:3)
你需要一些linke
a = output[0][1,outputs.size-2].map{|t| t.strip}
现在a将是["abc", "xyz", "mno"]
类型的数组。我没有对这个数组进行排序,因为它似乎没有在你显示的输出中排序。
答案 1 :(得分:1)
你可以这样写:
output = arr.flatten[1..-1].map { |s| s.strip }.sort
答案 2 :(得分:0)
我会咬人:
output = [["efg\r\n", "abc\r\n", "xyz\r\n", "mno\r\n", "end "]]
output[0][1..-2].map &:strip
#=> ["abc", "xyz", "mno"]