]> www.wagner.pp.ru Git - oss/ljdump.git/commitdiff
Moved the "lj tag" regular expression objects to the global scope (so they
authorgrahams <github@sean-graham.com>
Sun, 8 Feb 2009 22:04:42 +0000 (06:04 +0800)
committerGreg Hewgill <greg@hewgill.com>
Mon, 4 May 2009 11:34:20 +0000 (19:34 +0800)
don't need to be recompiled on each iteration).  --suggestion by jparise

Signed-off-by: Greg Hewgill <greg@hewgill.com>
convertdump.py

index c99fff9b7d8d33bf311056c5ee7419ba660eb313..9799cabf377208a01eb56600b261f118a703e818 100755 (executable)
@@ -175,28 +175,43 @@ def addCommentsForId(outDoc, entry, username, id):
         if(parentId != ""): 
             appendTextNode(outDoc, outComment, "parent_itemid", parentId)
 
         if(parentId != ""): 
             appendTextNode(outDoc, outComment, "parent_itemid", parentId)
 
+
+# regular expressions used in replaceLJTags()
+#   (global for later reuse - suggestion by jparise)
+
+userRE = re.compile('<lj user="(.*?)" ?/?>', re.IGNORECASE)
+commRE = re.compile('<lj comm="(.*?)" ?/?>', re.IGNORECASE)
+namedCutRE = re.compile('<lj-cut +text="(.*?)" ?/?>', 
+                        re.IGNORECASE|re.DOTALL)
+cutRE = re.compile('<lj-cut>', re.IGNORECASE)
+cutRE = re.compile('</lj-cut>', re.IGNORECASE)
+embedRE = re.compile('<lj-embed id="[0-9]+">', re.IGNORECASE)
+
 def replaceLJTags(entry):
     rv = entry
 
 def replaceLJTags(entry):
     rv = entry
 
-    # replace lj user tags
     userRE = re.compile('<lj user="(.*?)" ?/?>', re.IGNORECASE)
     userRE = re.compile('<lj user="(.*?)" ?/?>', re.IGNORECASE)
+    commRE = re.compile('<lj comm="(.*?)" ?/?>', re.IGNORECASE)
+    namedCutRE = re.compile('<lj-cut +text="(.*?)" ?/?>', 
+                            re.IGNORECASE|re.DOTALL)
+    cutRE = re.compile('<lj-cut>', re.IGNORECASE)
+    cutRE = re.compile('</lj-cut>', re.IGNORECASE)
+    embedRE = re.compile('<lj-embed id="[0-9]+">', re.IGNORECASE)
+
+    # replace lj user tags
     rv = re.sub(userRE, '<a href="http://\\1.livejournal.com/" class="lj-user">\\1</a>', rv) 
 
     # replace lj comm tags
     rv = re.sub(userRE, '<a href="http://\\1.livejournal.com/" class="lj-user">\\1</a>', rv) 
 
     # replace lj comm tags
-    commRE = re.compile('<lj comm="(.*?)" ?/?>', re.IGNORECASE)
     rv = re.sub(commRE, '<a href="http://community.livejournal.com/\\1/" class="lj-comm">\\1</a>', rv) 
 
     # replace lj-cut tags
     rv = re.sub(commRE, '<a href="http://community.livejournal.com/\\1/" class="lj-comm">\\1</a>', rv) 
 
     # replace lj-cut tags
-    namedCutRE = re.compile('<lj-cut +text="(.*?)" ?/?>', 
-                            re.IGNORECASE|re.DOTALL)
     rv = re.sub(namedCutRE, '<!--more \\1-->', rv)
     rv = re.sub(namedCutRE, '<!--more \\1-->', rv)
-    
-    cutRE = re.compile('<lj-cut>', re.IGNORECASE)
     rv = re.sub(cutRE, '<!--more-->', rv)
     rv = re.sub(cutRE, '<!--more-->', rv)
-
-    cutRE = re.compile('</lj-cut>', re.IGNORECASE)
     rv = re.sub(cutRE, '', rv)
 
     rv = re.sub(cutRE, '', rv)
 
+    # replace lj-embed tags
+    rv = re.sub(embedRE, '', rv)
+
     return rv
 
 
     return rv