in doxia-modules/doxia-module-markdown/src/main/java/org/apache/maven/doxia/module/markdown/MarkdownSink.java [831:866]
private static String escapeMarkdown(String text) {
if (text == null) {
return "";
}
int length = text.length();
StringBuilder buffer = new StringBuilder(length);
for (int i = 0; i < length; ++i) {
char c = text.charAt(i);
switch (c) {
case '\\':
case '`':
case '*':
case '_':
case '{':
case '}':
case '[':
case ']':
case '(':
case ')':
case '#':
case '+':
case '-':
case '.':
case '!':
buffer.append('\\');
buffer.append(c);
break;
default:
buffer.append(c);
}
}
return buffer.toString();
}