#!/usr/bin/perl use Benchmark; $rein = '+5000*'; timethese(10000000, { A => sub { if ($rein =~ m~(?:-|\+|\*|/)~) { # Do nothing } }, B => sub { if ($rein =~ m~-~ or m~\+~ or m~\*~ or m~/~) { # Do nothing } }, C => sub { if ($rein =~ m~[-+*/]~) { # Do nothing } }, D => sub { if ($rein =~ m~[-]~ or m~[+]~ or m~[*]~ or m~[/]~) { # Do nothing } }, E => sub { if (index($_, '-') > -1 or index($_, '+') > -1 or index($_, '*') > -1 or index($_, '/') > -1) { # Do nothing } } });