engine
core
Pure-Go Onigmo-lineage regex engine; stdlib-regexp-shaped API with lookaround & backrefs. CGO=0.
Pure-Go regular expressions with lookahead, lookbehind and backreferences — the constructs RE2 forbids.
The standard library regexp is built on RE2, which guarantees linear-time matching by forbidding the features that need backtracking. go-regexp supports exactly those — lookahead (?=…)/(?!…), lookbehind (?<=…)/(?<!…), backreferences \1/\k<name>, atomic groups and \g<name> subexpression calls — while keeping a standard-library-shaped API, so it drops in next to regexp without an alias.
Match a version only when it is followed by a quote or angle bracket — a lookahead RE2 rejects:
re := onigmo.MustCompile(`v\d+\.\d+\.\d+(?=["<])`)
got := re.FindAllString(`a v1.2.3" b v4.5.6< c v9.9.9 d`, -1)
// got == []string{"v1.2.3", "v4.5.6"} (v9.9.9 excluded)The single module in the org today, mirrored from the live GitHub repo.
engine
corePure-Go Onigmo-lineage regex engine; stdlib-regexp-shaped API with lookaround & backrefs. CGO=0.
Pure Go with CGO_ENABLED=0 — no C library, no cgo, identical on every platform. A backtracking VM serves the full feature set, with a linear-time lazy-NFA/DFA accelerator for the RE2-compatible subset and a step/time budget that bounds pathological patterns. 100% statement coverage, 6-arch + qemu + wasm CI. BSD-3-Clause.