diff --git a/text-regex.c b/text-regex.c index c3d1cb23f..640ead526 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 5c85fdd48..15b2340ab 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);