diff options
| author | Squirrel <squirrelhomebrew@gmail.com> | 2026-01-27 18:54:07 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-27 18:54:07 -0800 |
| commit | 2bfa3286eda81375422d9dda38b110512749cef9 (patch) | |
| tree | 21f7959cf05360b3205e99c621d5f8249ecfe953 | |
| parent | 76118d8ea2369e4d89495bebeec52b98aaad56e4 (diff) | |
fix MAYBE.....................
| -rw-r--r-- | std/regex.zc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/std/regex.zc b/std/regex.zc index 346985e..92f1a54 100644 --- a/std/regex.zc +++ b/std/regex.zc @@ -1,5 +1,6 @@ include <regex.h> include <string.h> + import "./core.zc" import "./string.zc" import "./vec.zc" @@ -33,11 +34,11 @@ struct Regex { impl Regex { fn compile(pattern: char*) -> Regex { - return Regex::compile_with_flags(pattern, 1); + return Regex::compile_with_flags(pattern, 1 | 2); } fn compile_with_flags(pattern: char*, flags: int) -> Regex { - let preg = malloc(128); + let preg = malloc(1024); let status = regcomp(preg, pattern, flags); if (status != 0) { free(preg); @@ -55,6 +56,10 @@ impl Regex { return regexec(self.preg, text, 0, 0, 0) == 0; } + fn match_full(self, text: char*) -> bool { + return self.match(text); + } + fn match_at(self, text: char*, offset: int) -> bool { if (self.preg == 0) { return false; } let len = strlen(text); |
