Revision: 8307
Author: xqt
Date: 2010-06-18 15:52:34 +0000 (Fri, 18 Jun 2010)
Log Message:
-----------
fix for replaceExcept() with exceptionRegexes['template'] because a infinite
loop occures by some maths expression even they are excluded by 'math'.
Example: <math>\mathrm{{}^{9}_4 Be + {}^{4}_2 \alpha \to {}^{1}{}^{2}_6 C +
{}^{1}_0 n }</math>
Modified Paths:
--------------
branches/rewrite/pywikibot/textlib.py
trunk/pywikipedia/pywikibot/textlib.py
Modified: branches/rewrite/pywikibot/textlib.py
===================================================================
--- branches/rewrite/pywikibot/textlib.py 2010-06-18 10:55:33 UTC (rev
8306)
+++ branches/rewrite/pywikibot/textlib.py 2010-06-18 15:52:34 UTC (rev
8307)
@@ -80,7 +80,7 @@
# templates cascaded up to level 2, but no deeper. For arbitrary
# depth, we'd need recursion which can't be done in Python's re.
# After all, the language of correct parenthesis words is not regular.
- 'template': re.compile(r'(?s){{(({{.*?}})?.*?)*}}'),
+ 'template': re.compile(r'(?s){{(({{.*?}})|.)*}}'),
'hyperlink': compileLinkR(),
'gallery': re.compile(r'(?is)<gallery.*?>.*?</gallery>'),
# this matches internal wikilinks, but also interwiki, categories, and
Modified: trunk/pywikipedia/pywikibot/textlib.py
===================================================================
--- trunk/pywikipedia/pywikibot/textlib.py 2010-06-18 10:55:33 UTC (rev
8306)
+++ trunk/pywikipedia/pywikibot/textlib.py 2010-06-18 15:52:34 UTC (rev
8307)
@@ -80,7 +80,7 @@
# templates cascaded up to level 2, but no deeper. For arbitrary
# depth, we'd need recursion which can't be done in Python's re.
# After all, the language of correct parenthesis words is not regular.
- 'template': re.compile(r'(?s){{(({{.*?}})?.*?)*}}'),
+ 'template': re.compile(r'(?s){{(({{.*?}})|.)*}}'),
'hyperlink': compileLinkR(),
'gallery': re.compile(r'(?is)<gallery.*?>.*?</gallery>'),
# this matches internal wikilinks, but also interwiki, categories, and
_______________________________________________
Pywikipedia-svn mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn