private static String replaceHeadings()

in markbook/src/main/java/org/apache/hadoop/gateway/markbook/MarkBook.java [122:135]


  private static String replaceHeadings( String text ) throws IOException {
    Pattern pattern = Pattern.compile( "^(#+)(.+?)#*$", Pattern.MULTILINE );
    Matcher matcher = pattern.matcher( text );
    while( matcher.find() ) {
      String tag = matcher.group( 1 );
      String name = matcher.group( 2 ).trim();
      String id = id( name );
      if( !name.startsWith( "<a id=" ) ) {
        text = replace( matcher, text, String.format( "%s <a id=\"%s\"></a>%s %s", tag, id, name, tag ) );
        matcher = pattern.matcher( text );
      }
    }
    return text;
  }