rexen

Package VersionHex Docs

gleam add rexen
import rexen
pub fn main() {
let assert Ok(nfa) = rexen.new("(ab)*")
rexen.compute(nfa, "ab") // -> True
rexen.compute(nfa, "ababab") // -> True
rexen.compute(nfa, "ababa") // -> False
rexen.compute(nfa, "a") // -> False
}

Features

Rexen supports a core set of regular expression operations, including:

OperatorDescriptionExpressionMatches
*Zero or more of the preceding character or group of charactersa*"", "a", "aa" "aaa"
+One or more of the preceding character or group of charactersa+"a", "aa", "aaa"
?Zero or one of the preceding character or group of charactersa?"", "a"
|Matches either the expression before or after the operatora|b"a", "b"
()Groups characters or expressions(ab)+"ab", "abab", "ababab"

Note: Concatenation is implicit in rexen. ie the expression abc matches a followed by b and c - "abc"

Further documentation can be found at https://hexdocs.pm/rexen.

Development

gleam test # Run the tests