Been thinking how #delete #tr #gsub methods are fast:
'some@email.com'.delete('@.')
'some@email.com'.tr('@.', '')
'some@email.com'.gsub('@', '').gsub('.', '')| method | real |
|---|---|
| #delete | (0.008266) |
| #tr | (0.009554) |
| #gsub | (0.026041) |
The results will be different on other machine but it looks like #delete is fastest.
require 'benchmark'
Benchmark.bmbm do |x|
x.report { 10000.times { 'donat@gmail.com'.delete('@.') } }
x.report { 10000.times { 'donat@gmail.com'.tr('@.', '') } }
x.report { 10000.times { 'donat@gmail.com'.gsub('@', '').gsub('.', '') } }
end