2015-06-08 21:47:02 -04:00
|
|
|
import io:*
|
|
|
|
|
import regex:*
|
|
|
|
|
|
|
|
|
|
fun main():int {
|
2015-06-14 18:13:52 -04:00
|
|
|
println("concat")
|
2015-06-12 14:16:28 -04:00
|
|
|
var reg = regex("ab")
|
|
|
|
|
println(reg.long_match("abab"))
|
|
|
|
|
println(reg.long_match("aab"))
|
2015-06-14 11:13:30 -04:00
|
|
|
|
2015-06-14 18:13:52 -04:00
|
|
|
println("repitition")
|
2015-06-14 11:13:30 -04:00
|
|
|
|
|
|
|
|
reg = regex("a*b+c")
|
|
|
|
|
println(reg.long_match("bc"))
|
|
|
|
|
println(reg.long_match("aaaaaaaaaaaaaaaabc"))
|
|
|
|
|
println(reg.long_match("aaaaaaaaaaaaaaaabbbbbbbbbc"))
|
|
|
|
|
println(reg.long_match("aaaaaaaaaaaaaaaa"))
|
|
|
|
|
println(reg.long_match("aaaaaaaaaaaaaaaac"))
|
|
|
|
|
println(reg.long_match("aaaaaaaaaaaaaaaab"))
|
2015-06-14 18:13:52 -04:00
|
|
|
|
|
|
|
|
println("alternation")
|
|
|
|
|
|
|
|
|
|
reg = regex("a|b")
|
|
|
|
|
println(reg.long_match("a"))
|
|
|
|
|
println(reg.long_match("b"))
|
|
|
|
|
println(reg.long_match("aa"))
|
|
|
|
|
println(reg.long_match("bb"))
|
|
|
|
|
println(reg.long_match("ab"))
|
|
|
|
|
println(reg.long_match("c"))
|
|
|
|
|
|
|
|
|
|
println("perens!")
|
|
|
|
|
reg = regex("(a|b)*")
|
|
|
|
|
println(reg.long_match("a"))
|
|
|
|
|
println(reg.long_match("b"))
|
|
|
|
|
println(reg.long_match("aa"))
|
|
|
|
|
println(reg.long_match("bb"))
|
|
|
|
|
println(reg.long_match("ab"))
|
|
|
|
|
println(reg.long_match("abbbaaababab"))
|
|
|
|
|
println(reg.long_match("c"))
|
|
|
|
|
|
|
|
|
|
println("optional!")
|
|
|
|
|
reg = regex("a?b")
|
|
|
|
|
println(reg.long_match("a"))
|
|
|
|
|
println(reg.long_match("b"))
|
|
|
|
|
println(reg.long_match("ab"))
|
|
|
|
|
|
2015-06-15 21:32:09 -04:00
|
|
|
println("escape!")
|
|
|
|
|
reg = regex("a\\?+")
|
|
|
|
|
println(reg.long_match("a"))
|
|
|
|
|
println(reg.long_match("a?"))
|
|
|
|
|
println(reg.long_match("a??"))
|
|
|
|
|
|
2015-06-14 18:13:52 -04:00
|
|
|
println("Old Contributed")
|
|
|
|
|
var re = regex("a*");
|
|
|
|
|
println(re.long_match("a"));
|
|
|
|
|
println(re.long_match("aa"));
|
|
|
|
|
println(re.long_match("aaaab"));
|
|
|
|
|
println(re.long_match("b"));
|
|
|
|
|
|
|
|
|
|
re = regex("a+");
|
|
|
|
|
println(re.long_match("aa"));
|
|
|
|
|
println(re.long_match("aaaab"));
|
|
|
|
|
println(re.long_match("b"));
|
|
|
|
|
|
|
|
|
|
re = regex("a(bc)?");
|
|
|
|
|
println(re.long_match("ab"));
|
|
|
|
|
|
|
|
|
|
re = regex("((ab)|c)*");
|
|
|
|
|
println(re.long_match("ababc"));
|
|
|
|
|
println(re.long_match("ad"));
|
|
|
|
|
println(re.long_match("ababccd"));
|
|
|
|
|
|
|
|
|
|
re = regex("bbb((bba+)|(ba+))*a*((a+b)|(a+bb)|(a+))*bbb") ;
|
|
|
|
|
println(re.long_match("bbbababbbaaaaaaaaaaaaaaaaaaabbb"));
|
2015-06-08 21:47:02 -04:00
|
|
|
return 0
|
|
|
|
|
}
|