aboutsummaryrefslogtreecommitdiff
path: root/tests/regcount.test
diff options
context:
space:
mode:
Diffstat (limited to 'tests/regcount.test')
-rw-r--r--tests/regcount.test116
1 files changed, 91 insertions, 25 deletions
diff --git a/tests/regcount.test b/tests/regcount.test
index 731bfc7..e359389 100644
--- a/tests/regcount.test
+++ b/tests/regcount.test
@@ -8,32 +8,98 @@ needs constraint regexp_are
set n 0
foreach {pat str exp} {
- a+ bac 1
- a{1,} bac 1
- a* bac 1
- a{0,} bac 1
- aa+ bac 0
- a{2,} bac 0
- a{2,} bacaad 1
- a{3,} bacaad 0
- a{2,}$ bacaad 0
- a{2,}$ bacaa 1
- a{2,}$ ba 0
- a{2,}$ aa 1
- a{0,0}b$ b 1
- a{1,1}b$ b 0
- a{1,1}b$ cab 1
- a{2,2}b$ cab 0
- a{2,2}b$ cabaabx 0
- a{2,2}b$ cacaab 1
- ca{2,4}b cacaab 1
- ca{2,3}b cacaab 1
- ca{2,3}b cacaaab 1
- c(a|b){2,3}d xcbad 1
- c(a|b){2,3}d xcabbd 1
- c(a|b){2,3}d xcbaaad 0
+ a+ bac a
+ a{1,} bac a
+ a* bac {{}}
+ a{0,} bac {{}}
+ aa+ bac {}
+ a{2,} bac {}
+ a{2,} bacaad aa
+ a{3,} bacaad {}
+ {a{2,}$} bacaad {}
+ {a{2,}$} bacaa aa
+ {a{2,}$} ba {}
+ {a{2,}$} aa aa
+ {a{0,0}b$} b b
+ {a{1,1}b$} b {}
+ {a{1,1}b$} cab ab
+ {a{2,2}b$} cab {}
+ {a{2,2}b$} cabaabx {}
+ {a{2,2}b$} cacaab aab
+ ca{2,4}b cacaab caab
+ ca{2,3}b cacaab caab
+ ca{2,3}b cacaaab caaab
+ c(a|b){2,3}d xcbad {cbad a}
+ c(a|b){2,3}d xcabbd {cabbd b}
+ c(a|b){2,3}d xcbaaad {}
+ a{4} baaaad aaaa
+ a{2,5} baaaad aaaa
+ a{1,3} baaaad aaa
+ a{1,2} baaaad aa
+ a{3,4} baaaad aaaa
+ a{5,6} baaaad {}
+ a{4}? baaaad aaaa
+ a{2,5}? baaaad aa
+ a{1,3}? baaaad a
+ a{1,2}? baaaad a
+ a{3,4}? baaaad aaa
+ a{5,6}? baaaad {}
+ {\d{1,3}} 239 239
+ (aa|bb)?c xabbaac {aac aa}
+ (a|y)+ bac {a a}
+ (a|y){1,} bac {a a}
+ (a|y)* bac {{} {}}
+ (a|y){0,} bac {{} {}}
+ (a|y)a+ bac {}
+ (a|y){2,} bac {}
+ (a|y){2,} bacaad {aa a}
+ (a|y){3,} bacaad {}
+ {(a|y){2,}$} bacaad {}
+ {(a|y){2,}$} bacaa {aa a}
+ {(a|y){2,}$} ba {}
+ {(a|y){2,}$} aa {aa a}
+ {(a|y){0,0}b$} b {b {}}
+ {(a|y){1,1}b$} b {}
+ {(a|y){1,1}b$} cab {ab a}
+ {(a|y){2,2}b$} cab {}
+ {(a|y){2,2}b$} cabaabx {}
+ {(a|y){2,2}b$} cacaab {aab a}
+ c(a|y){2,4}b cacaab {caab a}
+ c(a|y){2,3}b cacaab {caab a}
+ c(a|y){2,3}b cacaaab {caaab a}
+ c((a|y)|b){2,3}d xcbad {cbad a a}
+ ####c((a|y)|b){2,3}d xcabbd {cabbd b {}}
+ c((a|y)|b){2,3}d xcbaaad {}
+ (a|y){4} baaaad {aaaa a}
+ (a|y){2,5} baaaad {aaaa a}
+ (a|y){1,3} baaaad {aaa a}
+ (a|y){1,2} baaaad {aa a}
+ (a|y){3,4} baaaad {aaaa a}
+ (a|y){5,6} baaaad {}
+ (a|y){4}? baaaad {aaaa a}
+ (a|y){2,5}? baaaad {aa a}
+ (a|y){1,3}? baaaad {a a}
+ (a|y){1,2}? baaaad {a a}
+ (a|y){3,4}? baaaad {aaa a}
+ (a|y){5,6}? baaaad {}
+ {[[:alpha:]]+} _bcd56_ef bcd
+ {[[:alnum:]]+} _bcd56_ef bcd56
+ {[[:space:]]+} "_bc \t\r\n\f\v_" "{ \t\r\n\f\v}"
+ {[\x41-\x43]+} "_ABCD_" ABC
+ {\m.+\M} "#A test#" "{A test}"
+ {\m.+?\M} "#A test#" "A"
+ {\m\M} "a" ""
+ {ab*c} xnbbmbbbc {}
+ {.^xxx} yyy {}
+ {\mb} " abc " ""
+ ((a*)*b)*b aaaaaaaaaaaaaaaaaaaaaaaaab {b {} {}}
+ ####(a*)* aab {aa {}}
} {
- test regcount-1.[incr n] "Test: regexp $pat" [list regexp -- $pat $str] $exp
+ if {[string match #* $pat]} {
+ continue
+ }
+ #puts \t[list $pat $str [regexp -inline -- $pat $str]]
+ test regcount-1.[incr n] "Test: regexp $pat $str" [list regexp -inline -- $pat $str] $exp
}
testreport