Method: String#index_all

Defined in:
lib/lite/ruby/string.rb

#index_all(pattern) ⇒ Object



90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/lite/ruby/string.rb', line 90

def index_all(pattern)
  pattern = pattern.to_s if pattern.is_a?(Numeric)
  arr_indexes = []
  srch_index = rindex(pattern)

  while srch_index
    temp_string = self[0..(srch_index - 1)]
    arr_indexes << srch_index
    srch_index = srch_index.zero? ? nil : temp_string.rindex(pattern)
  end

  arr_indexes.reverse
end