#include "c-libs/dyn-arr.h" #include "c-libs/string-view.h" #include int main() { StringView sv = sv_new("Hello World\n"); sv_puts(sv); sv_puts(sv_drop(sv_shrink(sv, 3), 2)); sv_puts(sv_drop(sv_shrink(sv, 5), 9)); StringView sv2 = sv_new("AAA Test BBB"); sv_puts(sv2); puts(""); sv2 = sv_seek(sv2, ' '); sv_puts(sv2); puts(""); sv2 = sv_seek_back(sv2, ' '); sv_puts(sv2); puts(""); StringView csv = sv_new(" 100 , 2000, 10 ,1,871"); StringView *values = NULL; darr_init(values, 0); while (sv_len(csv)) { StringView item = sv_split_at(&csv, ','); darr_push(values, sv_trim(item, isspace)); } char *all = sv_concat_with_sep(values, darr_size(values), sv_new("::")); puts(all); darr_clear(values); StringView ccsv = sv_new(all); while (sv_len(ccsv)) { StringView item = sv_split_at_sv(&ccsv, sv_new("::")); darr_push(values, sv_trim(item, isspace)); } char *all2 = sv_concat_with_sep(values, darr_size(values), sv_new("-+-")); puts(all2); free(all); free(all2); darr_free(values); }