diff src/org/nwoca/ssdt/tools/html2wiki/TagTransformer.java @ 4:22ed6d93442c

Start modifying transformers to Confluence wiki syntax
author smith@nwoca.org
date Tue, 25 Jan 2011 21:59:31 -0500
parents f8b1ea49d065
children
line wrap: on
line diff
--- a/src/org/nwoca/ssdt/tools/html2wiki/TagTransformer.java	Tue Jan 25 17:08:12 2011 -0500
+++ b/src/org/nwoca/ssdt/tools/html2wiki/TagTransformer.java	Tue Jan 25 21:59:31 2011 -0500
@@ -3,33 +3,41 @@
 import java.util.regex.*;
 
 class TagTransformer implements Transformer {
+
     private Pattern tagPattern;
     private String replacementBegin;
     private String replacementEnd;
-    
+
     public TagTransformer(String regexp, String replacementBegin, String replacementEnd) {
-        tagPattern = Pattern.compile(regexp);
+        this(regexp, false, replacementBegin, replacementEnd);
+    }
+
+    public TagTransformer(String regexp, boolean multiline, String replacementBegin, String replacementEnd) {
+        tagPattern = multiline
+                ? Pattern.compile(regexp, Pattern.MULTILINE + Pattern.DOTALL)
+                : Pattern.compile(regexp);
+
         this.replacementBegin = replacementBegin;
         this.replacementEnd = replacementEnd;
-         
+
     }
+
     public TagTransformer(String regexp, String replacement) {
-        this(regexp,replacement,replacement);
+        this(regexp, replacement, replacement);
     }
-    
+
     public void apply(StringBuffer buffer) {
         Matcher matcher = tagPattern.matcher(buffer);
-        
+
         boolean first = true;
         while (matcher.find(first ? 0 : matcher.start())) {
-            buffer.replace(matcher.start(),matcher.end(),replacementBegin + matcher.group(1) + replacementEnd);
+            buffer.replace(matcher.start(), matcher.end(), replacementBegin + matcher.group(1) + replacementEnd);
             first = false;
         }
-     
-    }
-        
-    public String toString() {
-        return "Replace: " + tagPattern.pattern() + " with " +replacementBegin + "..." + replacementEnd;
+
     }
 
-}
\ No newline at end of file
+    public String toString() {
+        return "Replace: " + tagPattern.pattern() + " with " + replacementBegin + "..." + replacementEnd;
+    }
+}