diff options
author | Hiltjo Posthuma <hiltjo@codemadness.org> | 2015-01-02 21:14:07 +0100 |
---|---|---|
committer | Hiltjo Posthuma <hiltjo@codemadness.org> | 2015-01-02 21:14:07 +0100 |
commit | 86993965de423bdd9f4cfb146929a1cdd9fbc0b2 (patch) | |
tree | 22657797ec44c475d3ae29e24a77764dfef390bb /util.c | |
parent | 43f02f646c97ddbc4dc41fe9e119506cf95e0b28 (diff) |
trim string
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 25 |
1 files changed, 24 insertions, 1 deletions
@@ -76,12 +76,35 @@ parseline(char **line, size_t *size, char **fields, return i; } +const char * +trimend(const char *s) +{ + size_t len = strlen(s); + + for(; len > 0 && isspace((int)s[len - 1]); len--) + ; + return &s[len]; +} + +const char * +trimstart(const char *s) +{ + for(; *s && isspace((int)*s); s++) + ; + return s; +} + /* print feed name for id; spaces and tabs in string as "-" * (spaces in anchors are not valid). */ void printfeednameid(const char *s, FILE *fp) { - for(; *s; s++) + const char *e; + + s = trimstart(s); + e = trimend(s); + + for(; *s && s != e; s++) fputc(isspace((int)*s) ? '-' : tolower((int)*s), fp); } |