Редагувати: Нещодавно я дізнався про проект під назвою CommonMark, який правильно ідентифікує і вирішує неясності в оригінальній специфікації Markdown. http://commonmark.org/ Він має чудову підтримку бібліотеки C #.
Ви можете знайти синтаксис тут .
Джерело, яке випливає із завантаженням, написане на Perl , яке я не маю наміру шанувати. Він пронизаний регулярними виразами, і він покладається на хеші MD5, щоб уникнути певних символів. Щось у цьому просто не так!
Я збираюся жорстко розібрати парсер для Markdown . Який досвід з цим?
Якщо у вас немає нічого значущого сказати про фактичний розбір Маркдауна, шкодуйте мене часу. (Це може здатися суворим, але так, я шукаю розуміння, а не рішення, тобто сторонню бібліотеку).
Щоб допомогти трохи у відповідях, регулярні вирази призначені для виявлення шаблонів ! НЕ розбирати цілу граматику. Що люди вважають, що це роблять, це foobar.
- Якщо ви думаєте про Маркдаун, він принципово ґрунтується на концепції пунктів.
- Таким чином, розумним підходом може бути поділ даних на абзаци.
- Існує багато видів абзаців, наприклад, заголовок, текст, список, блок-котирування та код.
- Завдання полягає в тому, щоб визначити ці пункти та в якому контексті вони виникають.
Я повернусь із рішенням, як тільки знайду, що його варто поділитись.