equal
deleted
inserted
replaced
280 # made it explode, so we'll divide the pattern list in two |
280 # made it explode, so we'll divide the pattern list in two |
281 # until it works |
281 # until it works |
282 l = len(pats) |
282 l = len(pats) |
283 if l < 2: |
283 if l < 2: |
284 raise |
284 raise |
285 pata, a = _buildmatch(pats[:l//2], tail) |
285 pata, a = _buildregexmatch(pats[:l//2], tail) |
286 patb, b = _buildmatch(pats[l//2:], tail) |
286 patb, b = _buildregexmatch(pats[l//2:], tail) |
287 return pat, lambda s: a(s) or b(s) |
287 return pat, lambda s: a(s) or b(s) |
288 except re.error: |
288 except re.error: |
289 for k, p in pats: |
289 for k, p in pats: |
290 try: |
290 try: |
291 re.compile('(?:%s)' % _regex(k, p, tail)) |
291 re.compile('(?:%s)' % _regex(k, p, tail)) |