Neither stand up too well unless I've screwed something (which as we all know is entirely possible :):
Update: Code corrected in light of ikegami's post below:
C:\test>byChar.pl ... rgx_scalar => q[ our $string; while ( $string =~ /(.)/sg) { my $c = $1; } ], rgx_list => q[ our $string; for my $c ( $string =~ /(.)/sg) { ; } ], C:\test>byChar.pl Rate split rgx_list substr_refs rgx_scalar unpack subs +tr chop rev_chop pre_split split 9984/s -- -34% -74% -75% -76% -7 +7% -82% -83% -94% rgx_list 15104/s 51% -- -61% -62% -63% -6 +5% -73% -74% -91% substr_refs 38242/s 283% 153% -- -3% -7% -1 +2% -33% -34% -78% rgx_scalar 39574/s 296% 162% 3% -- -3% - +9% -30% -32% -77% unpack 40959/s 310% 171% 7% 3% -- - +6% -28% -29% -76% substr 43352/s 334% 187% 13% 10% 6% +-- -24% -25% -75% chop 56695/s 468% 275% 48% 43% 38% 3 +1% -- -2% -67% rev_chop 57962/s 481% 284% 52% 46% 42% 3 +4% 2% -- -67% pre_split 173576/s 1639% 1049% 354% 339% 324% 30 +0% 206% 199% --
In reply to Re^3: How to access each char in a string most quickly?
by BrowserUk
in thread How to access each char in a string most quickly?
by llancet
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |