diff --git a/src/md_pango.c b/src/md_pango.c
index f1e9b9a..16456a3 100644
--- a/src/md_pango.c
+++ b/src/md_pango.c
@@ -25,13 +25,24 @@ gchar *md_pango_render(gchar *markup, gint length)
g_regex_unref(regex);
g_free(str);
- regex = g_regex_new("#{2}(.*)", 0, 0, NULL);
- str = g_regex_replace(regex, str2, -1, 0, "
\\1
", 0, NULL);
+ regex = g_regex_new("\\#{4}(.*)", 0, 0, NULL);
+ str = g_regex_replace(regex, str2, -1, 0, "\\1", 0, NULL);
g_regex_unref(regex);
g_free(str2);
- regex = g_regex_new("#{1}(.*)", 0, 0, NULL);
- str2 = g_regex_replace(regex, str, -1, 0, "\\1
", 0, NULL);
+ regex = g_regex_new("\\#{3}(.*)", 0, 0, NULL);
+ str2 = g_regex_replace(regex, str, -1, 0, "\\1", 0, NULL);
+ g_regex_unref(regex);
+ g_free(str);
+
+ regex = g_regex_new("\\#{2}(.*)", 0, 0, NULL);
+ str = g_regex_replace(regex, str2, -1, 0, "\\1", 0, NULL);
+ g_regex_unref(regex);
+ g_free(str2);
+
+ regex = g_regex_new("\\#{1}(.*)", 0, 0, NULL);
+ str2 = g_regex_replace(regex, str, -1, 0, "\\1",
+ 0, NULL);
g_regex_unref(regex);
g_free(str);