diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2021-07-03 10:47:47 -0400 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2021-07-03 10:47:47 -0400 |
commit | 0ca215bd99dde1505dc855e4d8826ce2ce63973d (patch) | |
tree | f32a926bb91f20534965d86c9265e86005b389e5 /misc.c | |
parent | 9115136fcafa01b3d37f19f11e08d7ba18202b50 (diff) |
Added `find_alpha()`, and `create_num_str()`.
Diffstat (limited to 'misc.c')
-rw-r--r-- | misc.c | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -1,3 +1,4 @@ +#include <ctype.h> #include <string.h> #include <stdarg.h> #include <stdio.h> @@ -127,6 +128,22 @@ char *sanitize_str(char *str) { return san_str; } +char *find_alpha(const char *str) { + for (; !isalpha(*str); str++); + return str; +} + +char *create_num_str(const char *str, int num) { + char *name; + int lead_num = strtol(str, &name, 10); + const char *sep = (*name != '-') ? "-" : ""; + const char *s = find_alpha(name); + + name = calloc(format_len("%04d%s%s", num, sep, s), sizeof(char)); + sprintf(name, "%04d%s%s", num, sep, str); + return name; +} + int format_len(const char *fmt, ...) { int len = 0; va_list args; |