Skip to content

Releases: mnemnion/mvzr

Patterns which can match the empty string, do

12 Dec 03:42
v0.3.2
3b2847f
Compare
Choose a tag to compare

A pattern like ".?" or ".*" now matches "". Previously this was hard-coded to return null.

Fixes #5

Bugfix patch for 0.3.0

01 Dec 15:50
v0.3.1
c130207
Compare
Choose a tag to compare

Fixes a couple parsing errors related to grouping multibyte characters.

Version 0.3.0: Multibye modifiers and high-bit ranges.

01 Dec 01:52
v0.3.0
1ad1d12
Compare
Choose a tag to compare

This release improves multibyte handling. Codepoints are kept together, such that a regex like λ+ now matches "λλλ", and ranges and bytes expressed with \x syntax can cover the whole u8 range, not just the ASCII lower portion of it. With some care this allows for construction of useful character sets, so long as they happen to be dense in the Unicode codepoint spectrum.

Proper ranges of \xXX-\xXX

30 Nov 17:06
v0.2.5
1c09e09
Compare
Choose a tag to compare

This corrects a fencepost error, which gave incorrect results for ranges in the form r"[\x01-x3f]".

Try to match empty string

11 Nov 18:28
v0.2.4
fdd42e7
Compare
Choose a tag to compare

This release does a final try to match the empty string, which handles a pattern such as a*$ matching a string like "bbbb".

Bug fixes: alt + modifier, Kleene * + subsequent fail

10 Nov 16:44
v0.2.3
e22c155
Compare
Choose a tag to compare

This release fixes one bug in the regex compiler, and one in the matching runtime.

Upgrading is recommended.

Scoped Logging

12 Aug 20:39
v0.2.2
fbae8ac
Compare
Choose a tag to compare

Compile errors are now scoped in .mvzr, making it practical to filter them out when desired.

Regex convenience type now public

06 Aug 19:36
v0.2.1
343f555
Compare
Choose a tag to compare

This release makes the Regex type, which is just SizedRegex(64,8), public.

No other changes from v0.2.1.

Add regex.matchPos

06 Aug 18:08
v0.2.0
641ef3f
Compare
Choose a tag to compare

A convenience function which slices the string for you, and adjusts the values in the Match returned to their location in the original haystack string.

Add eager {M,N}+ qualifier

20 Jul 17:45
v0.1.2
Compare
Choose a tag to compare
Implements a{M,N}+

I consider this an especially useful eager qualifier to have.  It is in
the very nature of {M,N} patterns to 'want to' match N when that can be
accomplished.

I'm in favor of the use of eager/possessives in general, actually. Many
cases of greedy qualifiers could be either lazy or eager instead, those
which actually split the difference are rare.