progs/catastrophic.py
author pdated
Sat, 16 Jun 2018 20:54:58 +0100
changeset 184 84dc794928de
parent 156 cc6d036401f4
permissions -rw-r--r--
updated

#!/usr/bin/env python
import re
import sys

# case of catastrophic backtracking in Python
#
# regex: (a*)*b
# strings: aa...a
#
# call with timing as:
#
#   > time ./catastrophic.py 20

# counter n given on the command line
cn = sys.argv[1]

# calling the matching function
s = ("a" * int(cn))
m = re.match('(a*)*b' , s) 

print s