aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--text-regex.c4
-rw-r--r--text-regex.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/text-regex.c b/text-regex.c
index c3d1cb2..640ead5 100644
--- a/text-regex.c
+++ b/text-regex.c
@@ -30,6 +30,10 @@ void text_regex_free(Regex *r) {
free(r);
}
+int text_regex_match(Regex *r, const char *data, int eflags) {
+ return regexec(&r->regex, data, 0, NULL, eflags);
+}
+
int text_search_range_forward(Text *txt, size_t pos, size_t len, Regex *r, size_t nmatch, RegexMatch pmatch[], int eflags) {
char *buf = text_bytes_alloc0(txt, pos, len);
if (!buf)
diff --git a/text-regex.h b/text-regex.h
index 5c85fdd..15b2340 100644
--- a/text-regex.h
+++ b/text-regex.h
@@ -9,6 +9,7 @@ typedef Filerange RegexMatch;
Regex *text_regex_new(void);
int text_regex_compile(Regex *r, const char *regex, int cflags);
void text_regex_free(Regex *r);
+int text_regex_match(Regex*, const char *data, int eflags);
int text_search_range_forward(Text*, size_t pos, size_t len, Regex *r, size_t nmatch, RegexMatch pmatch[], int eflags);
int text_search_range_backward(Text*, size_t pos, size_t len, Regex *r, size_t nmatch, RegexMatch pmatch[], int eflags);