It seems to be obvious that in your approach the problem is, that split
iterator allocates a new string for each call. There may exist other, faster
but uglier solutions. Basically reusing the same string. Was that available in
parseutils? I can not remember, but I guess faster examples may be available
somewhere. Rosetta, or that blog post about faster command line tools? Dom's
book -- he talked about allocations, but his conclusion was not fully correct
in the first draft. I wonder if iterators are possible which do not allocate
the result?