From 9566646cd54a34c0dfe2dbdd89ee3858372a6c28 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Mon, 13 Jul 2020 16:13:06 +0200 Subject: Move string utils to their own file --- src/stringutils.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/stringutils.c (limited to 'src/stringutils.c') diff --git a/src/stringutils.c b/src/stringutils.c new file mode 100644 index 0000000..172d40d --- /dev/null +++ b/src/stringutils.c @@ -0,0 +1,47 @@ +#include "stringutils.h" +#include + +void string_replace(char *str, char old_char, char new_char) { + for(;;) { + char c = *str; + if(c == old_char) + *str = new_char; + else if(c == '\0') + break; + ++str; + } +} + +char* lstrip(char *str) { + for(;;) { + char c = *str; + if(c != ' ' && c != '\t' && c != '\n') + break; + else if(c == '\0') + break; + ++str; + } + return str; +} + +void rstrip(char *str) { + int len = strlen(str); + if(len == 0) + return; + + char *p = str + len - 1; + while(p != str) { + char c = *p; + if(c != ' ' && c != '\t' && c != '\n') + break; + --p; + } + + p[1] = '\0'; +} + +char* strip(char *str) { + str = lstrip(str); + rstrip(str); + return str; +} \ No newline at end of file -- cgit v1.2.3