http://qs1969.pair.com?node_id=79879


in reply to Re: Re: Removing Trailing Whitespace: Multiple ways.
in thread Removing Trailing Whitespace: Multiple ways.

Yah, so I was lazy and I cheated a bit. $foo will look good when you print it though. What can I say, there are reasons I am a perl programmer.

But to be all official like and actually update the scalar value to be a proper string of length 4 you can use this code for rmsp:
void rmsp(SV * sv) { char * end; int length; if( !SvPOK(sv) ) return; end = SvEND(sv); length = SvCUR(sv); end--; /* skip \0 */ while( *end == ' ' && length >=0 ) { end--; length--; } if( length >= 0 ) SvCUR_set(sv, length); }
And the new results I got are:
Benchmark: timing 1000000 iterations of inline, regex... inline: 6 wallclock secs ( 4.19 usr + 0.01 sys = 4.20 CPU) regex: 9 wallclock secs ( 7.71 usr + 0.02 sys = 7.73 CPU)