Men*_*bon 2 ruby metaprogramming
我想找到名称与字符串匹配的所有ruby类(忽略大小写).这意味着该字符串应该是类名的子字符串.
所以当你搜索'stri'时,你应该得到这个类String(等等).
你知道一种方便而且效率不高的方法吗?
ObjectSpace.each_object(Class)
.select{|klass| klass.name.downcase.include?("stri".downcase)}
# => [
String,
RubyToken::TkDXSTRING,
RubyToken::TkDSTRING,
RubyToken::TkXSTRING,
RubyToken::TkSTRING
]
Run Code Online (Sandbox Code Playgroud)