ref: 52a9615661dfd2c9d4114b1a6f1d48830c3e3427
dir: /lib/regex/test/basic.myr/
use std use "testmatch" const main = { var s : byte[:] s = std.strjoin([ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", ][:], "") testmatch(".*bc", "Abc", `std.Some [][:]) testmatch("(a*)*", "a", `std.Some ["a"][:]) testmatch("(aa|aab?)*", s, `std.Some ["aa"][:]) /* greedy matches */ testmatch("(<.*>).*", "<a foo> blah <bar>", `std.Some [ "<a foo> blah <bar>", ][:]) testmatch("(<.+>).*", "<a foo> blah <bar>", `std.Some [ "<a foo> blah <bar>", ][:]) /* reluctant matches */ testmatch("(<.*?>).*", "<a foo> blah <bar>", `std.Some [ "<a foo>", ][:]) testmatch("(<.+?>).*", "<a foo> blah <bar>", `std.Some [ "<a foo>", ][:]) std.put("6\n") }