http://www.perlmonks.org?node_id=448932


in reply to Re: cut vs split (suggestions)
in thread cut vs split (suggestions)

I am Perl-illiterate, but:

how is 5 faster than 1?
And how possibly "index" / "substring" could be faster than smth. like:
char* cut(char* pStr, int col, char* delim=",") { // not a real-life code, all good assumptions here: int n = 0; while(*pStr++){ if(*pStr==*delim){ if(++n == col){ return until_next_one(++pStr, delim); } } } }
--?
Sorry if I missed the point.

Replies are listed 'Best First'.
Re^3: cut vs split (and on usefullness of cat, too:-))
by cees (Curate) on Apr 18, 2005 at 17:52 UTC

    I wasn't implying that my perl version was faster than the C version. I think it is save to say that for every perl program, there is a C program that can perform the same task in less time.

    I was stating that using index and substr where you can is almost always faster than using a regexp, so my index and substr version was faster than the join and split versions listed above. So I was comparing different perl implementations.

    I guess I probably should have timed one of the split/join examples and included that, but I didn't know which one was the fastest. So I included the timing based on the C version of cut, which gives a baseline for anyone to compare against.

    - Cees