summaryrefslogtreecommitdiffstats
path: root/parsers/Headings.java
diff options
context:
space:
mode:
Diffstat (limited to 'parsers/Headings.java')
-rw-r--r--parsers/Headings.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/parsers/Headings.java b/parsers/Headings.java
new file mode 100644
index 0000000..b23966c
--- /dev/null
+++ b/parsers/Headings.java
@@ -0,0 +1,21 @@
+package scruf.parsers;
+
+import java.util.regex.*;
+
+public class Headings implements Parser {
+ public String parse(String fileContent) {
+ int size;
+ Pattern pattern = Pattern.compile("(\\={10,})\\n(.+?)\\n(\\1)");
+ Matcher matcher = pattern.matcher(fileContent);
+ StringBuffer sbuffer = new StringBuffer();
+ while(matcher.find()) {
+ size = (matcher.group(1).length())/10;
+ matcher.appendReplacement(sbuffer,
+ "<h"+size+"> "+
+ "$2 "+
+ "</h"+size+">");
+ }
+ matcher.appendTail(sbuffer);
+ return sbuffer.toString();
+ }
+}