1: (?%...) nested matched pair regex tests 2008-09-04 2 3EA (?%() -(-)- EPAREN 4EA (?%()") -(-)- EPAREN 5 6EA (?%()) -(-)- (1,4) 7EA (?%()) -(-)-)- (1,4) 8EA (?%()) -(-()-)- (1,7) 9EA (?%()) -(-\)-)- (1,5) 10EA (?%()) -(-\\)-)- (1,6) 11EA (?%()) -(-(-)- (3,6) 12EA (?%()) -(-(-)-)- (1,8) 13 14EA (?%()[]) -(-[-]-)- (1,8) 15EA (?%()[]) -[-(-)-]- (3,6) 16EA (?%()[]) -(-[-)-]- NOMATCH 17 18EA (?%[]()) -(-[-]-)- (3,6) 19EA (?%[]()) -[-(-)-]- (1,8) 20EA (?%[]()) -(-[-)-]- NOMATCH 21 22EA (?%()Q") -(-")"-)- (1,8) 23EA (?%()Q") -(-\")"-)- (1,9) 24EA (?%()Q") -(-\")\"-)- (1,10) 25 26EA (?%()Q'Q") -(-'")'-)- (1,9) 27EA (?%()Q'Q") -(-\'")"-)- NOMATCH 28EA (?%()Q'Q") -(-\'")"'-)- (1,11) 29EA (?%()Q'Q") -(-\"')'\"-)- (1,12) 30EA (?%()Q'Q") -(-')\''-)- NOMATCH 31 32EA (?%()L'Q") -(-'")'-)- (1,9) 33EA (?%()L'Q") -(-\'")"-)- NOMATCH 34EA (?%()L'Q") -(-\'")"'-)- (1,11) 35EA (?%()L'Q") -(-\"')'\"-)- (1,12) 36EA (?%()L'Q") -(-')\''-)- NOMATCH 37 38EA (?%()Q") -(-")"-)- (1,8) 39EA (?%()Q") -(-\")"-)- (1,9) 40EA (?%()Q") -(-\")\"-)- (1,10) 41 42EA (?%()E\\) -(-\)-)- (1,7) 43EA (?%()E\\) -(-\\)-)- (1,6) 44EA (?%()E\\Q") -(-\")"-)- (1,6) 45EA (?%()E\\Q") -(-\")\"-)- (1,6) 46EA (?%()E\\Q'Q") -(-\'")"-)- (1,10) 47EA (?%()E\\Q'Q") -(-\"')'\"-)- (1,12) 48EA (?%()E\\L'Q") -(-\'")"-)- (1,10) 49EA (?%()E\\L'Q") -(-\"')'\"-)- (1,12) 50EA (?%()E\\L'Q") -(-\"')\'\"-)- (1,13) 51EA (?%()E\\L'Q") -(-\"')\'\"'-)- NOMATCH 52 53EA (?%()T;) -(-;-)- NOMATCH 54EA (?%()T;) -(-);- (1,4) 55EA (?%()T;) -(-)- (1,4) 56 57EA (?%()D;) -(-;-)- NOMATCH 58EA (?%()D;) -(-);- (1,4) 59EA (?%()D;) -(-)- (1,4) 60 61EA (?%()S;) -(-;-)- (1,6) 62EA (?%()S;) -(-);- (1,4) 63EA (?%()S;) -(-)- (1,4) 64 65EA ([[:alnum:]]+)([[:space:]])*((?%())) call(a+b,x/(c/d),(0)); (0,21)(0,4)(?,?)(4,21) 66 67EA (?%T;) NULL NOMATCH 68EA (?%D;) NULL NOMATCH 69EA (?%S;) NULL NOMATCH 70 71EA (?%T;OT) NULL NOMATCH 72EA (?%D;OT) NULL NOMATCH 73EA (?%S;OT) NULL NOMATCH 74 75EA (?%T;) - NOMATCH 76EA (?%D;) - NOMATCH 77EA (?%S;) - NOMATCH 78 79EA (?%T;OT) - (0,1) 80EA (?%D;OT) - (0,1) 81EA (?%S;OT) - (0,1) 82 83EA (?%T;) -- NOMATCH 84EA (?%D;) -- NOMATCH 85EA (?%S;) -- NOMATCH 86 87EA (?%T;OT) -- (0,2) 88EA (?%D;OT) -- (0,2) 89EA (?%S;OT) -- (0,2) 90 91EA (?%T;E\\L'Q") -(-)- NOMATCH 92EA (?%T;E\\L'Q") -(-;-)- (0,4) 93EA (?%T;E\\L'Q") -(-);- (0,5) 94EA (?%T;E\\L'Q") -(-;-);- (0,4) 95EA (?%T;E\\L'Q") -(-\;-);- (0,8) 96EA (?%T;E\\L'Q") -(-';'-);- (4,5) 97EA (?%T;E\\L'Q") -(-";"-);- (4,5) 98 99EA (?%T;E\\L'Q"()) -(-)- NOMATCH 100EA (?%T;E\\L'Q"()) -(-;-)- (2,4) 101EA (?%T;E\\L'Q"()) -(-);- (0,5) 102EA (?%T;E\\L'Q"()) -(-;-);- (2,4) 103EA (?%T;E\\L'Q"()) -(-\;-);- (0,8) 104EA (?%T;E\\L'Q"()) -(-';'-);- (4,5) 105EA (?%T;E\\L'Q"()) -(-";"-);- (4,5) 106 107EA (?%D;E\\L'Q") -(-)- NOMATCH 108EA (?%D;E\\L'Q") -(-;-)- (0,4) 109EA (?%D;E\\L'Q") -(-);- (0,5) 110EA (?%D;E\\L'Q") -(-;-);- (0,4) 111EA (?%D;E\\L'Q") -(-\;-);- (0,8) 112EA (?%D;E\\L'Q") -(-';'-);- (0,9) 113EA (?%D;E\\L'Q") -(-";"-);- (0,9) 114 115EA (?%D;E\\L'Q"()) -(-)- NOMATCH 116EA (?%D;E\\L'Q"()) -(-;-)- (2,4) 117EA (?%D;E\\L'Q"()) -(-);- (0,5) 118EA (?%D;E\\L'Q"()) -(-;-);- (2,4) 119EA (?%D;E\\L'Q"()) -(-\;-);- (0,8) 120EA (?%D;E\\L'Q"()) -(-';'-);- (0,9) 121EA (?%D;E\\L'Q"()) -(-";"-);- (0,9) 122 123EA (?%S;E\\L'Q") -(-)- NOMATCH 124EA (?%S;E\\L'Q") -(-;-)- (0,4) 125EA (?%S;E\\L'Q") -(-);- (0,5) 126EA (?%S;E\\L'Q") -(-;-);- (0,4) 127EA (?%S;E\\L'Q") -(-\;-);- (0,8) 128EA (?%S;E\\L'Q") -(-';'-);- (0,9) 129EA (?%S;E\\L'Q") -(-";"-);- (0,9) 130 131EA (?%S;E\\L'Q"()) -(-)- NOMATCH 132EA (?%S;E\\L'Q"()) -(-;-)- (2,4) 133EA (?%S;E\\L'Q"()) -(-);- (0,5) 134EA (?%S;E\\L'Q"()) -(-;-);- (0,7) 135EA (?%S;E\\L'Q"()) -(-\;-);- (0,8) 136EA (?%S;E\\L'Q"()) -(-';'-);- (0,9) 137EA (?%S;E\\L'Q"()) -(-";"-);- (0,9) 138 139EA (?%T;OTE\\L'Q") -(-)- (0,5) 140EA (?%T;OTE\\L'Q") -(-;-)- (0,4) 141EA (?%T;OTE\\L'Q") -(-);- (0,5) 142EA (?%T;OTE\\L'Q") -(-;-);- (0,4) 143EA (?%T;OTE\\L'Q") -(-\;-);- (0,8) 144EA (?%T;OTE\\L'Q") -(-';'-);- (4,5) 145EA (?%T;OTE\\L'Q") -(-";"-);- (4,5) 146 147EA (?%T;OTE\\L'Q"()) -(-)- (0,5) 148EA (?%T;OTE\\L'Q"()) -(-;-)- (2,4) 149EA (?%T;OTE\\L'Q"()) -(-);- (0,5) 150EA (?%T;OTE\\L'Q"()) -(-;-);- (2,4) 151EA (?%T;OTE\\L'Q"()) -(-\;-);- (0,8) 152EA (?%T;OTE\\L'Q"()) -(-';'-);- (4,5) 153EA (?%T;OTE\\L'Q"()) -(-";"-);- (4,5) 154 155EA (?%D;OTE\\L'Q") -(-)- (0,5) 156EA (?%D;OTE\\L'Q") -(-;-)- (0,4) 157EA (?%D;OTE\\L'Q") -(-);- (0,5) 158EA (?%D;OTE\\L'Q") -(-;-);- (0,4) 159EA (?%D;OTE\\L'Q") -(-\;-);- (0,8) 160EA (?%D;OTE\\L'Q") -(-';'-);- (0,9) 161EA (?%D;OTE\\L'Q") -(-";"-);- (0,9) 162 163EA (?%D;OTE\\L'Q"()) -(-)- (0,5) 164EA (?%D;OTE\\L'Q"()) -(-;-)- (2,4) 165EA (?%D;OTE\\L'Q"()) -(-);- (0,5) 166EA (?%D;OTE\\L'Q"()) -(-;-);- (2,4) 167EA (?%D;OTE\\L'Q"()) -(-\;-);- (0,8) 168EA (?%D;OTE\\L'Q"()) -(-';'-);- (0,9) 169EA (?%D;OTE\\L'Q"()) -(-";"-);- (0,9) 170 171EA (?%S;OTE\\L'Q") -(-)- (0,5) 172EA (?%S;OTE\\L'Q") -(-;-)- (0,4) 173EA (?%S;OTE\\L'Q") -(-);- (0,5) 174EA (?%S;OTE\\L'Q") -(-;-);- (0,4) 175EA (?%S;OTE\\L'Q") -(-\;-);- (0,8) 176EA (?%S;OTE\\L'Q") -(-';'-);- (0,9) 177EA (?%S;OTE\\L'Q") -(-";"-);- (0,9) 178 179EA (?%S;OTE\\L'Q"()) -(-)- (0,5) 180EA (?%S;OTE\\L'Q"()) -(-;-)- (0,7) 181EA (?%S;OTE\\L'Q"()) -(-);- (0,5) 182EA (?%S;OTE\\L'Q"()) -(-;-);- (0,7) 183EA (?%S;OTE\\L'Q"()) -(-\;-);- (0,8) 184EA (?%S;OTE\\L'Q"()) -(-';'-);- (0,9) 185EA (?%S;OTE\\L'Q"()) -(-";"-);- (0,9) 186 187K %(() -(-)- NOMATCH 188K %(()") -(-)- NOMATCH 189 190K %(()) -(-)- (1,4)(1,4) 191K %(()) -(-)-)- (1,4)(1,4) 192K %(()) -(-()-)- (1,7)(1,7) 193K %(()) -(-\)-)- (1,5)(1,5) 194K %(()) -(-\\)-)- (1,6)(1,6) 195K %(()) -(-(-)- (3,6)(3,6) 196K %(()) -(-(-)-)- (1,8)(1,8) 197 198K %(()[]) -(-[-]-)- (1,8)(1,8) 199K %(()[]) -[-(-)-]- (3,6)(3,6) 200K %(()[]) -(-[-)-]- NOMATCH 201 202K %([]()) -(-[-]-)- (3,6)(3,6) 203K %([]()) -[-(-)-]- (1,8)(1,8) 204K %([]()) -(-[-)-]- NOMATCH 205 206K %(()Q") -(-")"-)- (1,8)(1,8) 207K %(()Q") -(-\")"-)- (1,9)(1,9) 208K %(()Q") -(-\")\"-)- (1,10)(1,10) 209 210K %(()Q'Q") -(-'")'-)- (1,9)(1,9) 211K %(()Q'Q") -(-\'")"-)- NOMATCH 212K %(()Q'Q") -(-\'")"'-)- (1,11)(1,11) 213K %(()Q'Q") -(-\"')'\"-)- (1,12)(1,12) 214K %(()Q'Q") -(-')\''-)- NOMATCH 215 216K %(()L'Q") -(-'")'-)- (1,9)(1,9) 217K %(()L'Q") -(-\'")"-)- NOMATCH 218K %(()L'Q") -(-\'")"'-)- (1,11)(1,11) 219K %(()L'Q") -(-\"')'\"-)- (1,12)(1,12) 220K %(()L'Q") -(-')\''-)- NOMATCH 221 222K %(()Q") -(-")"-)- (1,8)(1,8) 223K %(()Q") -(-\")"-)- (1,9)(1,9) 224K %(()Q") -(-\")\"-)- (1,10)(1,10) 225 226K %(()E\\) -(-\)-)- (1,7)(1,7) 227K %(()E\\) -(-\\)-)- (1,6)(1,6) 228K %(()E\\Q") -(-\")"-)- (1,6)(1,6) 229K %(()E\\Q") -(-\")\"-)- (1,6)(1,6) 230K %(()E\\Q'Q") -(-\'")"-)- (1,10)(1,10) 231K %(()E\\Q'Q") -(-\"')'\"-)- (1,12)(1,12) 232K %(()E\\L'Q") -(-\'")"-)- (1,10)(1,10) 233K %(()E\\L'Q") -(-\"')'\"-)- (1,12)(1,12) 234K %(()E\\L'Q") -(-\"')\'\"-)- (1,13)(1,13) 235K %(()E\\L'Q") -(-\"')\'\"'-)- NOMATCH 236 237K %(()T;) -(-;-)- NOMATCH 238K %(()T;) -(-);- (1,4)(1,4) 239K %(()T;) -(-)- (1,4)(1,4) 240 241K %(()D;) -(-;-)- NOMATCH 242K %(()D;) -(-);- (1,4)(1,4) 243K %(()D;) -(-)- (1,4)(1,4) 244 245K %(()S;) -(-;-)- (1,6)(1,6) 246K %(()S;) -(-);- (1,4)(1,4) 247K %(()S;) -(-)- (1,4)(1,4) 248 249K *%(())* -((-))- (0,7)(2,5) 250K ~(-g)*%(())* -((-))- (0,6)(1,6) 251K ~(-g:*)%(())* -((-))- (0,7)(1,6) 252Km *%(())* -((-))- (0,6)(1,6) 253K *(?)%(())*(?) -((-))- (0,7)(0,2)(2,5)(5,7) 254K ~(-g)*(?)%(())*(?) -((-))- (0,6)(0,1)(1,6)(6,6) 255K ~(-g:*(?))%(())*(?) -((-))- (0,7)(0,1)(1,6)(6,7) 256Km *(?)%(())*(?) -((-))- (0,6)(0,1)(1,6)(6,6) 257 258K +([[:alnum:]])*([[:space:]])(%(())) call(a+b,x/(c/d),(0)); (0,21)(0,4)(4,4)(4,21)(4,21) 259 260K %(T;) NULL NOMATCH 261K %(D;) NULL NOMATCH 262K %(S;) NULL NOMATCH 263 264K %(T;OT) NULL NOMATCH 265K %(D;OT) NULL NOMATCH 266K %(S;OT) NULL NOMATCH 267 268K %(T;) - NOMATCH 269K %(D;) - NOMATCH 270K %(S;) - NOMATCH 271 272K %(T;OT) - (0,1)(0,1) 273K %(D;OT) - (0,1)(0,1) 274K %(S;OT) - (0,1)(0,1) 275 276K %(T;) -- NOMATCH 277K %(D;) -- NOMATCH 278K %(S;) -- NOMATCH 279 280K %(T;OT) -- (0,2)(0,2) 281K %(D;OT) -- (0,2)(0,2) 282K %(S;OT) -- (0,2)(0,2) 283 284K %(T;E\\L'Q") -(-)- NOMATCH 285K %(T;E\\L'Q") -(-;-)- (0,4)(0,4) 286K %(T;E\\L'Q") -(-);- (0,5)(0,5) 287K %(T;E\\L'Q") -(-;-);- (0,4)(0,4) 288K %(T;E\\L'Q") -(-\;-);- (0,8)(0,8) 289K %(T;E\\L'Q") -(-';'-);- (4,5)(4,5) 290K %(T;E\\L'Q") -(-";"-);- (4,5)(4,5) 291 292K %(T;E\\L'Q"()) -(-)- NOMATCH 293K %(T;E\\L'Q"()) -(-;-)- (2,4)(2,4) 294K %(T;E\\L'Q"()) -(-);- (0,5)(0,5) 295K %(T;E\\L'Q"()) -(-;-);- (2,4)(2,4) 296K %(T;E\\L'Q"()) -(-\;-);- (0,8)(0,8) 297K %(T;E\\L'Q"()) -(-';'-);- (4,5)(4,5) 298K %(T;E\\L'Q"()) -(-";"-);- (4,5)(4,5) 299 300K %(D;E\\L'Q") -(-)- NOMATCH 301K %(D;E\\L'Q") -(-;-)- (0,4)(0,4) 302K %(D;E\\L'Q") -(-);- (0,5)(0,5) 303K %(D;E\\L'Q") -(-;-);- (0,4)(0,4) 304K %(D;E\\L'Q") -(-\;-);- (0,8)(0,8) 305K %(D;E\\L'Q") -(-';'-);- (0,9)(0,9) 306K %(D;E\\L'Q") -(-";"-);- (0,9)(0,9) 307 308K %(D;E\\L'Q"()) -(-)- NOMATCH 309K %(D;E\\L'Q"()) -(-;-)- (2,4)(2,4) 310K %(D;E\\L'Q"()) -(-);- (0,5)(0,5) 311K %(D;E\\L'Q"()) -(-;-);- (2,4)(2,4) 312K %(D;E\\L'Q"()) -(-\;-);- (0,8)(0,8) 313K %(D;E\\L'Q"()) -(-';'-);- (0,9)(0,9) 314K %(D;E\\L'Q"()) -(-";"-);- (0,9)(0,9) 315 316K %(S;E\\L'Q") -(-)- NOMATCH 317K %(S;E\\L'Q") -(-;-)- (0,4)(0,4) 318K %(S;E\\L'Q") -(-);- (0,5)(0,5) 319K %(S;E\\L'Q") -(-;-);- (0,4)(0,4) 320K %(S;E\\L'Q") -(-\;-);- (0,8)(0,8) 321K %(S;E\\L'Q") -(-';'-);- (0,9)(0,9) 322K %(S;E\\L'Q") -(-";"-);- (0,9)(0,9) 323 324K %(S;E\\L'Q"()) -(-)- NOMATCH 325K %(S;E\\L'Q"()) -(-;-)- (2,4)(2,4) 326K %(S;E\\L'Q"()) -(-);- (0,5)(0,5) 327K %(S;E\\L'Q"()) -(-;-);- (0,7)(0,7) 328K %(S;E\\L'Q"()) -(-\;-);- (0,8)(0,8) 329K %(S;E\\L'Q"()) -(-';'-);- (0,9)(0,9) 330K %(S;E\\L'Q"()) -(-";"-);- (0,9)(0,9) 331 332K %(T;OTE\\L'Q") -(-)- (0,5)(0,5) 333K %(T;OTE\\L'Q") -(-;-)- (0,4)(0,4) 334K %(T;OTE\\L'Q") -(-);- (0,5)(0,5) 335K %(T;OTE\\L'Q") -(-;-);- (0,4)(0,4) 336K %(T;OTE\\L'Q") -(-\;-);- (0,8)(0,8) 337K %(T;OTE\\L'Q") -(-';'-);- (4,5)(4,5) 338K %(T;OTE\\L'Q") -(-";"-);- (4,5)(4,5) 339 340K %(T;OTE\\L'Q"()) -(-)- (0,5)(0,5) 341K %(T;OTE\\L'Q"()) -(-;-)- (2,4)(2,4) 342K %(T;OTE\\L'Q"()) -(-);- (0,5)(0,5) 343K %(T;OTE\\L'Q"()) -(-;-);- (2,4)(2,4) 344K %(T;OTE\\L'Q"()) -(-\;-);- (0,8)(0,8) 345K %(T;OTE\\L'Q"()) -(-';'-);- (4,5)(4,5) 346K %(T;OTE\\L'Q"()) -(-";"-);- (4,5)(4,5) 347 348K %(D;OTE\\L'Q") -(-)- (0,5)(0,5) 349K %(D;OTE\\L'Q") -(-;-)- (0,4)(0,4) 350K %(D;OTE\\L'Q") -(-);- (0,5)(0,5) 351K %(D;OTE\\L'Q") -(-;-);- (0,4)(0,4) 352K %(D;OTE\\L'Q") -(-\;-);- (0,8)(0,8) 353K %(D;OTE\\L'Q") -(-';'-);- (0,9)(0,9) 354K %(D;OTE\\L'Q") -(-";"-);- (0,9)(0,9) 355 356K %(D;OTE\\L'Q"()) -(-)- (0,5)(0,5) 357K %(D;OTE\\L'Q"()) -(-;-)- (2,4)(2,4) 358K %(D;OTE\\L'Q"()) -(-);- (0,5)(0,5) 359K %(D;OTE\\L'Q"()) -(-;-);- (2,4)(2,4) 360K %(D;OTE\\L'Q"()) -(-\;-);- (0,8)(0,8) 361K %(D;OTE\\L'Q"()) -(-';'-);- (0,9)(0,9) 362K %(D;OTE\\L'Q"()) -(-";"-);- (0,9)(0,9) 363 364K %(S;OTE\\L'Q") -(-)- (0,5)(0,5) 365K %(S;OTE\\L'Q") -(-;-)- (0,4)(0,4) 366K %(S;OTE\\L'Q") -(-);- (0,5)(0,5) 367K %(S;OTE\\L'Q") -(-;-);- (0,4)(0,4) 368K %(S;OTE\\L'Q") -(-\;-);- (0,8)(0,8) 369K %(S;OTE\\L'Q") -(-';'-);- (0,9)(0,9) 370K %(S;OTE\\L'Q") -(-";"-);- (0,9)(0,9) 371 372K %(S;OTE\\L'Q"()) -(-)- (0,5)(0,5) 373K %(S;OTE\\L'Q"()) -(-;-)- (0,7)(0,7) 374K %(S;OTE\\L'Q"()) -(-);- (0,5)(0,5) 375K %(S;OTE\\L'Q"()) -(-;-);- (0,7)(0,7) 376K %(S;OTE\\L'Q"()) -(-\;-);- (0,8)(0,8) 377K %(S;OTE\\L'Q"()) -(-';'-);- (0,9)(0,9) 378K %(S;OTE\\L'Q"()) -(-";"-);- (0,9)(0,9) 379