如何用ruby获取字符串中的所有标记字符?

时间:2015-10-29 03:42:52

标签: ruby string

例如,我的字符串是:

"abcd :e fghi :j klmn"

我希望获得带有特殊标记:e的{​​{1}}和:j。我可以这样做吗?

2 个答案:

答案 0 :(得分:2)

您可以使用String#scan执行此操作:

"abcd :e fghi :j klmn".scan(/:\w+/)
# => [":e", ":j"]

"abcd :egg fghi :joke klmn".scan(/:\w+/)
# => [":egg", ":joke"]

答案 1 :(得分:1)

"abcd :e fghi :j klmn".split(' ').select{|e| e.include? ':'}
=> [":e", ":j"]

"abcd :e fghi :j klmn".split(' ').select{|e| e =~ /^:\w/ }
=> [":e", ":j"]