[英]ruby collect first and last word from string
我有一个字符串数组,每个字符串都有任意单词和任意数量的单词。 对于每个字符串,我只需要收集第一个和最后一个字。 我可以先做或最后做:
a = vs.split("\n").
select { |i| i =~ /^\s+\d/ }.
collect { |i| i.scan(/\w+/).<first or last> }
但不是第一个和最后一个。 有什么建议么?
Array#values_at
应该做的诀窍:
str = "a b c d e"
str.scan(/\w+/).values_at(0, -1)
#=> ["a", "e"]
你也可以这样做:
str = "I am a boy"
[str[/^\w+/],str[/\w+$/]]
# => ["I", "boy"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.