ranking Sort Sort   |   date Sort Sort   |   member Sort Sort
Syndication

7
Date Submitted Tue. Sep. 26th, 2006 1:13 PM
Revision 1
Scripter sehrgut
Tags C | ltrim | Parse | rtrim | String | trim
Comments 1 comments
The modus operandi for this is similar to that taken by PHP's implementation of such functions. It's comparitively memory-intensive, but is much faster than running a whole bunch of tests.

Basically, you set a mask -- an array of 256 null bytes -- and set those that correspond to characters you wish to trim. Then, rather than having to test if a character is in the set of characters to trim(O(n), or linear time on *ws), you just test once (O(1), or unit time) to see if the byte in question is set.

And of course, to trim(), you just wrap trim() around both ltrim() and rtrim().

One point of caution: these functions trim in place, so copy strings before trimming them. (Of course, if you usually want access to both pre- and post-trimmed strings, you could always make these malloc() a new string and return a pointer to it . . . )
9
Date Submitted Mon. Sep. 4th, 2006 12:19 PM
Revision 1
Scripter sehrgut
Tags bash | Line | Parse
Comments 1 comments
Parsing newline-delimited data records in bash is simple, if you have this odd redirect up your sleeve. An annoying thing about bash is that it usually equates all whitespace characters, so the first block in the snippet won't let you use a file linewise, but will end up echoing each whitespace-delimited token on a separate line.

bash provides the "read" builtin which can be used to differentiate between newlines and spaces.
6
Date Submitted Thu. Oct. 20th, 2005 6:27 PM
Revision 1
Coder mattrmiller
Tags Date | Java | Parse
Comments 1 comments
Date Parse