Sha256: 6faac9e4fb267988556f7cdcfbbd8c5afe44855133a9ab4c0059a4c1b84c6b2f

Contents?: true

Size: 363 Bytes

Versions: 5

Compression:

Stored size: 363 Bytes

Contents

class String
  def gzub(pattern, format=nil, &proc)
    s = dup
    md = match(pattern)
    pos = 0
    md.captures.each_with_index do |m, n|
      replacement = if block_given?
        proc.call(m)
      else
        format % m
      end
      s[md.offset(n+1)[0] + pos, m.length] = replacement
      pos += replacement.length - m.length
    end
    s
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
aslakhellesoy-cucumber-0.0.1 lib/cucumber/core_ext/string.rb
aslakhellesoy-cucumber-0.1.1 lib/cucumber/core_ext/string.rb
aslakhellesoy-cucumber-0.1.2 lib/cucumber/core_ext/string.rb
aslakhellesoy-cucumber-0.1.3 lib/cucumber/core_ext/string.rb
aslakhellesoy-cucumber-0.1.4 lib/cucumber/core_ext/string.rb