Ich brauchte recht lange, bis ich dahinterkam, was der Traceback mir sagen wollte.
Ich musste mir erst ein kleines Test-Skript schreiben:
Code: Alles auswählen
import re
def func(matchobj):
print "gefunden:", matchobj.group(1)
text = "bla X123X jojo"
regex = re.compile("X(.*?)X")
# richtig:
regex.sub(func, text)
# Falsch (TypeError: expected string or buffer):
regex.sub(text, func)
Ob man da nicht einen Besseren Fehlertext ausgeben könnte?