Изменить: недавно я узнал о проекте под названием CommonMark, который правильно определяет и устраняет неоднозначности в исходной спецификации Markdown. http://commonmark.org/ Имеет отличную поддержку библиотеки C #.
Вы можете найти синтаксис здесь .
Исходный код, который следует за загрузкой, написан на Perl , и я не собираюсь его уважать. Он пронизан регулярными выражениями и использует хеши MD5 для экранирования определенных символов. Что-то здесь не так!
Я собираюсь жестко запрограммировать парсер для Markdown . Какой опыт с этим?
Если вы не можете сказать ничего значимого о фактическом разборе Markdown, сэкономьте мне время. (Это может показаться резким, но да, я ищу понимание, а не решение, то есть стороннюю библиотеку).
Чтобы немного помочь с ответами, регулярные выражения предназначены для идентификации шаблонов ! НЕ разбирать всю грамматику. То, что люди думают об этом, - это foobar.
- Если вы думаете о Markdown, он в основном основан на концепции абзацев.
- Таким образом, разумным подходом может быть разделение ввода на абзацы.
- Есть много видов абзацев, например заголовок, текст, список, цитата и код.
- Таким образом, задача состоит в том, чтобы определить эти параграфы и в каком контексте они встречаются.
Я вернусь с решением, как только найду, что им стоит поделиться.