sbr/trim.c: New helper function trim(). Strips whitespace from a string.
[mmh] / sbr / trim.c
diff --git a/sbr/trim.c b/sbr/trim.c
new file mode 100644 (file)
index 0000000..9f08d99
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+** trim.c -- strip leading and trailing whitespace ... inplace!
+**
+** This code is Copyright (c) 2002, by the authors of nmh.  See the
+** COPYRIGHT file in the root directory of the nmh distribution for
+** complete copyright information.
+*/
+
+#include <h/mh.h>
+
+
+char *
+trim(unsigned char *cp)
+{
+       unsigned char *sp;
+
+       /* skip over leading whitespace */
+       while (isspace(*cp)) {
+               cp++;
+       }
+
+       /* start at the end and zap trailing whitespace */
+       for (sp = cp + strlen(cp) - 1; sp >= cp; sp--) {
+               if (isspace(*sp)) {
+                       *sp = '\0';
+               } else {
+                       break;
+               }
+       }
+
+       return cp;
+}