summaryrefslogtreecommitdiff
path: root/sa-extract/strutil.c
diff options
context:
space:
mode:
authorKenneth Heafield <github@kheafield.com>2012-08-03 07:46:54 -0400
committerKenneth Heafield <github@kheafield.com>2012-08-03 07:46:54 -0400
commitbe1ab0a8937f9c5668ea5e6c31b798e87672e55e (patch)
treea13aad60ab6cced213401bce6a38ac885ba171ba /sa-extract/strutil.c
parente5d6f4ae41009c26978ecd62668501af9762b0bc (diff)
parent9fe0219562e5db25171cce8776381600ff9a5649 (diff)
Merge branch 'master' of github.com:redpony/cdec
Diffstat (limited to 'sa-extract/strutil.c')
-rw-r--r--sa-extract/strutil.c63
1 files changed, 0 insertions, 63 deletions
diff --git a/sa-extract/strutil.c b/sa-extract/strutil.c
deleted file mode 100644
index 456de87a..00000000
--- a/sa-extract/strutil.c
+++ /dev/null
@@ -1,63 +0,0 @@
-#include <string.h>
-#include <stdlib.h>
-
-/* Like strsep(3) except that the delimiter is a string, not a set of characters.
-*/
-char *strstrsep(char **stringp, const char *delim) {
- char *match, *save;
- save = *stringp;
- if (*stringp == NULL)
- return NULL;
- match = strstr(*stringp, delim);
- if (match == NULL) {
- *stringp = NULL;
- return save;
- }
- *match = '\0';
- *stringp = match + strlen(delim);
- return save;
-}
-
-static char **words = NULL;
-static int max_words;
-char **split(char *s, const char *delim, int *pn) {
- int i;
- char *tok, *rest;
-
- if (words == NULL) {
- max_words = 10;
- words = malloc(max_words*sizeof(char *));
- }
- i = 0;
- rest = s;
- while ((tok = (delim ? strstrsep(&rest, delim) : strsep(&rest, " \t\n"))) != NULL) {
- if (!delim && !*tok) // empty token
- continue;
- while (i+1 >= max_words) {
- max_words *= 2;
- words = realloc(words, max_words*sizeof(char *));
- }
- words[i] = tok;
- i++;
- }
- words[i] = NULL;
- if (pn != NULL)
- *pn = i;
- return words;
-}
-
-inline int isspace(char c) {
- return (c == ' ' || c == '\t' || c == '\n');
-}
-
-char *strip(char *s) {
- int n;
- while (isspace(*s) && *s != '\0')
- s++;
- n = strlen(s);
- while (n > 0 && isspace(s[n-1])) {
- s[n-1] = '\0';
- n--;
- }
- return s;
-}