This is a Ruby tree! It shows every object from the Ruby Programming Language in a tree format.

scan

        # String.scan

(from ruby core)
---
    str.scan(pattern)                         -> array
    str.scan(pattern) {|match, ...| block }   -> str

---

Both forms iterate through *str*, matching the pattern (which may be a
Regexp or a String). For each match, a result is generated and either
added to the result array or passed to the block. If the pattern
contains no groups, each individual result consists of the matched
string, `$&`.  If the pattern contains groups, each individual result is
itself an array containing one entry per group.

    a = "cruel world"
    a.scan(/\w+/)        #=> ["cruel", "world"]
    a.scan(/.../)        #=> ["cru", "el ", "wor"]
    a.scan(/(...)/)      #=> [["cru"], ["el "], ["wor"]]
    a.scan(/(..)(..)/)   #=> [["cr", "ue"], ["l ", "wo"]]

And the block form:

    a.scan(/\w+/) {|w| print "<<#{w}>> " }
    print "\n"
    a.scan(/(.)(.)/) {|x,y| print y, x }
    print "\n"

*produces:*

    <<cruel>> <<world>>
    rceu lowlr



      

This is MURDOC! A Ruby documentation browser inspired by Smalltalk-80. It allows you to learn about Ruby by browsing through its class hierarchies, and see any of its methods.