summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--examples/regex2.c1
-rw-r--r--examples/regex_replace.c2
-rw-r--r--include/stc/cregex.h3
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 <stc/cstr.h>
+#include <stc/csview.h>
#include <stc/cregex.h>
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;