diff -r da1f8c033b8e -r 94f5cce73a4f progs/catastrophic/catastrophic.python --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/progs/catastrophic/catastrophic.python Sun Sep 29 18:46:02 2024 +0100 @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 + +import re +import sys + +# case of catastrophic backtracking in Python +# +# regex: (a*)*b +# strings: aa...a +# +# call with timing as: +# +# time ./catastrophic.python 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) +print(m)