From 23ed40d55f3ff2b30f3b3fe01edfb51e418292b4 Mon Sep 17 00:00:00 2001 From: Tyge Løvset Date: Mon, 1 Aug 2022 16:59:19 +0200 Subject: fixed up last commit --- examples/regex2.c | 1 + examples/regex_replace.c | 2 +- include/stc/cregex.h | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/regex2.c b/examples/regex2.c index 384b4a36..c3f1e6d6 100644 --- a/examples/regex2.c +++ b/examples/regex2.c @@ -1,5 +1,6 @@ #define i_implement #include +#include #include int main() diff --git a/examples/regex_replace.c b/examples/regex_replace.c index ceecf4dd..eba31491 100644 --- a/examples/regex_replace.c +++ b/examples/regex_replace.c @@ -30,7 +30,7 @@ int main() printf("us+10: %s\n", cstr_str(&str)); /* Wrap first date inside []: */ - cstr_take(&str, cregex_replace(input, pattern, "[$0]", 1)); + cstr_take(&str, cregex_replace_p(input, pattern, "[$0]", 1)); printf("brack: %s\n", cstr_str(&str)); /* Shows how to compile RE separately */ diff --git a/include/stc/cregex.h b/include/stc/cregex.h index 3747eaf7..e828e944 100644 --- a/include/stc/cregex.h +++ b/include/stc/cregex.h @@ -71,7 +71,8 @@ typedef struct { } cregex; #define c_foreach_match(m, re, input) \ - for (csview m[cre_MAXCAPTURES] = {{0}}; cregex_find(input, &(re), m, cre_m_next) == cre_success;) + for (csview m[cre_MAXCAPTURES] = {{0}}, _c_in = csview_from(input); \ + cregex_find(_c_in.str, &(re), m, cre_m_next) == cre_success; ) //typedef csview cregmatch; -- cgit v1.2.3