Sha256: e57c70b9b8ad60c1e66fefcc1ad74bb2c669947837db17af681bc56584c44da2

Contents?: true

Size: 881 Bytes

Versions: 19

Compression:

Stored size: 881 Bytes

Contents

require 'benchmark'

COUNT = 1_000_000
data = "Content-Length: 100"
Benchmark.bmbm(25) do |bench|
  bench.report('regex') do
    COUNT.times do
      header = data.match(/(.*):\s(.*)/)
      "#{header[1]}: #{header[2]}"
    end
  end
  bench.report('split') do
    COUNT.times do
      header = data.split(': ')
      "#{header[0]}: #{header[1]}"
    end
  end
end



# Rehearsal ------------------------------------------------------------
# regex                      4.270000   0.010000   4.280000 (  4.294186)
# split                      3.870000   0.000000   3.870000 (  3.885645)
# --------------------------------------------------- total: 8.150000sec
# 
#                                user     system      total        real
# regex                      4.260000   0.010000   4.270000 (  4.284764)
# split                      3.860000   0.010000   3.870000 (  3.882795)

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
excon-0.0.21 benchmarks/headers_split_vs_match.rb
excon-0.0.20 benchmarks/headers_split_vs_match.rb
excon-0.0.19 benchmarks/headers_split_vs_match.rb
excon-0.0.18 benchmarks/headers_split_vs_match.rb
excon-0.0.17 benchmarks/headers_split_vs_match.rb
excon-0.0.16 benchmarks/headers_split_vs_match.rb
excon-0.0.15 benchmarks/headers_split_vs_match.rb
excon-0.0.14 benchmarks/headers_split_vs_match.rb
excon-0.0.13 benchmarks/headers_split_vs_match.rb
excon-0.0.12 benchmarks/headers_split_vs_match.rb
excon-0.0.11 benchmarks/headers_split_vs_match.rb
excon-0.0.10 benchmarks/headers_split_vs_match.rb
excon-0.0.8 benchmarks/headers_split_vs_match.rb
excon-0.0.7 benchmarks/headers_split_vs_match.rb
excon-0.0.5 benchmarks/headers_split_vs_match.rb
excon-0.0.4 benchmarks/headers_split_vs_match.rb
excon-0.0.3 benchmarks/headers_split_vs_match.rb
excon-0.0.2 benchmarks/headers_split_vs_match.rb
excon-0.0.1 benchmarks/headers_split_vs_match.rb