Add benchmark around string replacement.

Calculating -------------------------------------
                 #tr     62416 i/100ms
               #gsub     33750 i/100ms
              #gsub!     29695 i/100ms
                #sub     60774 i/100ms
               #sub!     64955 i/100ms
-------------------------------------------------
                 #tr   989348.8 (±5.0%) i/s -    4993280 in   5.060836s
               #gsub   422892.9 (±4.3%) i/s -    2126250 in   5.037741s
              #gsub!   364115.6 (±4.0%) i/s -    1841090 in   5.064496s
                #sub   964336.6 (±4.4%) i/s -    4861920 in   5.051775s
               #sub!  1016598.5 (±4.7%) i/s -    5131445 in   5.058987s
This commit is contained in:
Parker Moore 2014-10-22 01:36:43 -07:00
parent a30498ba42
commit e028d50b3f
1 changed files with 13 additions and 0 deletions

View File

@ -0,0 +1,13 @@
require 'benchmark/ips'
def str
'http://baruco.org/2014/some-talk-with-some-amount-of-value'
end
Benchmark.ips do |x|
x.report('#tr') { str.tr('some', 'a') }
x.report('#gsub') { str.gsub('some', 'a') }
x.report('#gsub!') { str.gsub!('some', 'a') }
x.report('#sub') { str.sub('some', 'a') }
x.report('#sub!') { str.sub!('some', 'a') }
end