简体   繁体   English

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

[英]How to get all marked characters in a string with ruby?

For example, my string is: 例如,我的字符串是:

"abcd :e fghi :j klmn"

I want to get :e and :j which with special mark : . 我想得到:e:j带有特殊标记: Can I do it? 我可以做吗?

You can do this using String#scan : 您可以使用String#scan执行此操作:

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

"abcd :egg fghi :joke klmn".scan(/:\w+/)
# => [":egg", ":joke"]
"abcd :e fghi :j klmn".split(' ').select{|e| e.include? ':'}
=> [":e", ":j"]

or 要么

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM