I have a list that I want to loop through (for trimtemp in trim) and see if it has any matches in a given string (modeltrim). The code runs fine most of the time however, every now and then it gives me the following error:
Traceback (most recent call last):
File "/home/hostadl/PricesFinal.py", line 318, in <module>
main()
File "/home/hostadl/PricesFinal.py", line 215, in main
match = re.search(r'{0}'.format(trimtemp), modeltrim, re.IGNORECASE)
File "/usr/local/lib/python3.2/re.py", line 158, in search
return _compile(pattern, flags).search(string)
File "/usr/local/lib/python3.2/re.py", line 256, in _compile
return _compile_typed(type(pattern), pattern, flags)
File "/usr/local/lib/python3.2/functools.py", line 180, in wrapper
result = user_function(*args, **kwds)
File "/usr/local/lib/python3.2/re.py", line 268, in _compile_typed
return sre_compile.compile(pattern, flags)
File "/usr/local/lib/python3.2/sre_compile.py", line 491, in compile
p = sre_parse.parse(p, flags)
File "/usr/local/lib/python3.2/sre_parse.py", line 692, in parse
p = _parse_sub(source, pattern, 0)
File "/usr/local/lib/python3.2/sre_parse.py", line 315, in _parse_sub
itemsappend(_parse(source, state))
File "/usr/local/lib/python3.2/sre_parse.py", line 642, in _parse
raise error("unbalanced parenthesis")
sre_constants.error: unbalanced parenthesis
Your help would be greatly appreciated!
This line appears to be the problem
You should look at what
format(trimtemp)contains. Perhaps add just add aon the line before. Probably it is containing
(or)which are of significance tore. Perhapsre.escape(format(trimtemp))is what you need