Posted to tcl by kostix at Tue Dec 25 00:29:53 GMT 2007view pretty
#! /usr/bin/perl use strict; use warnings; use Time::HiRes qw( gettimeofday tv_interval ); my $s = "A string with { spaces"; my ($t1, $t2, @parts); $t1 = [gettimeofday]; for my $i (1..1000) { @parts = split('\S+', $s); } $t2 = tv_interval($t1) * 1e6 / 1000; print "$t2 usec\n"; --- RESULTS: C:\tmp\benchmark>perl split.pl 8.902 usec C:\tmp\benchmark>perl split.pl 8.905 usec C:\tmp\benchmark>perl split.pl 8.883 usec --- Tcl: (bin) 16 % time { set parts [split [regsub -all {\s+} $s { }] { }] } 1000 13.007 microseconds per iteration (bin) 17 % time { set parts [split [regsub -all {\s+} $s { }] { }] } 1000 13.119 microseconds per iteration (bin) 18 % time { set parts [split [regsub -all {\s+} $s { }] { }] } 1000 13.01 microseconds per iteration