gleam add rexenimport 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
}Rexen supports a core set of regular expression operations, including:
| Operator | Description | Expression | Matches |
|---|---|---|---|
* |
Zero or more of the preceding character or group of characters | a* |
"", "a", "aa" "aaa" |
+ |
One or more of the preceding character or group of characters | a+ |
"a", "aa", "aaa" |
? |
Zero or one of the preceding character or group of characters | a? |
"", "a" |
| |
Matches either the expression before or after the operator | a|b |
"a", "b" |
() |
Groups characters or expressions | (ab)+ |
"ab", "abab", "ababab" |
Note: Concatenation is implicit in rexen. ie the expression
abcmatchesafollowed bybandc- "abc"
Further documentation can be found at https://hexdocs.pm/rexen.
gleam test # Run the tests