Janet 1.39.1-e9c6678 Documentation
(Other Versions:
1.38.0
1.37.1
1.36.0
1.35.0
1.34.0
1.31.0
1.29.1
1.28.0
1.27.0
1.26.0
1.25.1
1.24.0
1.23.0
1.22.0
1.21.0
1.20.0
1.19.0
1.18.1
1.17.1
1.16.1
1.15.0
1.13.1
1.12.2
1.11.1
1.10.1
1.9.1
1.8.1
1.7.0
1.6.0
1.5.1
1.5.0
1.4.0
1.3.1
)
regex
A module for compiling a subset of regexes to Janet PEGs. All regex are considered to be anchored, and performance is not going to be competitive with a native regex engine.
Supported regex features:
- single bytes
- escape characters
-
+
,*
,?
,.
- Repetitions, e.g.
a{1}
,a{1,3}
. Repetitions are eagerly evaluated. - Ranges, e.g.
[A-Za-z]
- Character classes, inverted character classes, e.g.
[abc]
,[^abc]
- Alteration (choice), except alteration is ordered, as in pegs -- e.g.
a|b|c
- Captures using parentheses, e.g.
(abc)
- Non-capture groups, e.g.
(?:abc)
Features found in other regex may never be added - for more complex usage, use Janet's native PEG library.
Reference
regex/compile regex/find regex/find-all regex/match regex/peg regex/replace regex/replace-all regex/source
regex/compile function source
(compile pattern) Compile a subset of regex to a PEG if pattern is a string. If pattern is a PEG, will return the PEG as is.
regex/find-all function source
(find-all reg text &opt start) Similar to peg/find-all, but for regexes.
regex/replace function source
(replace reg rep text &opt start) Similar to peg/replace, but for regexes.
regex/replace-all function source
(replace-all reg rep text &opt start) Similar to peg/replace-all, but for regexes.