/* trim - Functions to erase invisible characters in strings Copyright (C) 2002 John Ericson */ #include "trim.h" /* Returns a copy of string without * leading and trailing blank characters (space, tab & newline) */ char *trim(char *str) { str = ltrim(str); str = rtrim(str); return(str); } /* Returns a copy of a string without * leading blank characters (space, tab & newline) */ char *ltrim(char *str) { /* I think this is probably the most efficient way */ strrev(str); rtrim(str); strrev(str); return(str); } /* Returns a copy of a string without * trailing blank characters (space, tab & newline) */ char *rtrim(char *str) { int l = strlen(str) - 1; while (l >= 0) if (str[l] != ' ' && str[l] != '\n' && str[l] != '\t') { str[l + 1] = 0; break; } else l--; if ((l < 0) && ( str[0] == ' ' || str[0] == '\n' || str[0] == '\t')) { str[0] = '\0'; } return(str); }