C# API для анализа файлов Markdown

Используйте функции библиотеки C# для анализа и редактирования Markdown документов.

Разбор и Анализ Файлов Markdown с на C#

Библиотека Aspose.HTML для .NET предоставляет API синтаксического анализа Markdown для платформы C#. Пространство имен Aspose.Html.Toolkit.Markdown.Parser содержит классы и методы для обеспечения полного синтаксического анализа Markdown.

Вы можете создавать, редактировать, сохранять, объединять, конвертировать файлы MD в файлы других форматов, а также добавлять ссылки, списки, блоки кода, изображения и другие элементы в файлы Markdown, следуя ссылкам:



Как разобрать Markdown на C#

Задача программного редактирования Markdown на C# заключается в изменении элементов в дереве документа MD. Aspose.HTML для .NET API поддерживает набор элементов MD, определенных в GitHub Flavored Markdown Spec, а также правила вложения элементов. Более того, пространство имен Aspose.Html.Toolkit.Markdown.Extensions содержит классы и методы для управления синтаксисом Markdown на основе спецификаций, не являющихся частью спецификации GFM. Рассмотрим простые шаги для разбора и редактирования Markdown. Давайте разберем Markdown и отредактируем в нем текстовый контент:


Анализ и редактирование Markdown на C#

    // Specify the path to the source MD file
    var input = "C:/temp/input.md";

    // Create a MarkdownParser object
    var parser = new MarkdownParser();

    // Parse the MD document and get a syntax tree
    var markdown = parser.ParseFile(input);
    
    // Create a TreeWalker object and navigate through the syntax tree starting at the first node
    using var iterator = markdown.CreateTreeWalker(markdown.FirstChild);
    while (iterator.NextNode() != null)
    {
        // Check the type of the current node as EmphasisSyntax
        if (iterator.CurrentNode is EmphasisSyntaxNode)
        {
            var node = (EmphasisSyntaxNode)iterator.CurrentNode;
            var n = node.FirstChild;
            while (n != null)
            {
                var next = n.NextSibling;
                // Remove the EmphasisSyntax node
                node.RemoveChild(n);
                n = next;
            }

            // Get a SyntaxFactory to create new elements 
            var syntax = markdown.SyntaxFactory;

            // Add the text to a new node
            node.AppendChild(syntax.Text("new text with"));

            // Add whitespase
            node.AppendChild(syntax.Whitespace());

            // Create an emphasis object
            var emphasis = syntax.Emphasis(Emphasis.Strong);

            // Add the text into empasis and accumulate a new node
            emphasis.AppendChild(syntax.Text("strong emphasis!"));
            node.AppendChild(emphasis);
            break;
        }
    }

    // Prepare a path for MD file saving 
    string savePath = Path.Combine(OutputDir, "output-edit.md");

    // Save MD file
    markdown.Save(savePath);
        



Шаги по анализу и редактированию Markdown на C#

Рассмотрим простые шаги для разбора Markdown и редактирования существующего текстового контента:

  1. Укажите путь к исходному файлу MD и используйте MarkdownParser() для инициализации нового экземпляра класса MarkdownParser.
  2. Вызовите метод ParseFile() для разбора Markdown и получения синтаксического дерева.
  3. Создайте объект TreeWalker и перемещайтесь по синтаксическому дереву Markdown, удаляйте ненужное содержимое – узел EmphasisSyntax.
  4. Используйте свойство SyntaxFactory, чтобы получить фабрику синтаксиса для создания новых элементов.
  5. Создайте новый текстовый узел и добавьте текстовое содержимое к новомой ноде.
  6. Используйте метод AppendChild(), чтобы добавить новый узел в синтаксическое дерево.
  7. Сохраните отредактированный файл MD с помощью метода Save().

Документация

Чтобы узнать больше об Aspose.HTML API, посетите нашу документацию. Вы можете скачать примеры из репозитория GitHub . Они имеют открытый исходный код и могут свободно использоваться в ваших собственных приложениях.

Markdown – это простой язык разметки, который позволяет форматировать обычный текст. Джон Грубер, автор MD, разработал синтаксис форматирования Markdown с целью сделать его максимально читабельным. Markdown часто используется в качестве формата для документации и файлов readme, поскольку он позволяет писать в удобном для чтения и написания стиле. Статья документации Синтаксис Markdown содержит информацию об основных элементах Markdown, подробности и примеры синтаксиса Markdown.



Начало работы с .NET HTML API

Вы можете использовать несколько способов установки библиотеки Aspose.HTML для .NET в вашей системе:

  • Установите пакет NuGet с помощью графического интерфейса диспетчера пакетов NuGet.
  • Установите пакет NuGet с помощью консоли диспетчера пакетов.
  • Установите Aspose.HTML для .NET через MSI.

Aspose.HTML для .NET поддерживает синтаксический анализ HTML5, CSS3, SVG и HTML Canvas для создания объектной модели документа (DOM) на основе стандарта WHATWG DOM. Библиотека полностью написана на C# и может использоваться для создания любого типа 32-битного или 64-битного приложения .NET, включая ASP.NET, WCF, WinForms и .NET Core. Прежде чем запускать код примера преобразования .NET, убедитесь, что у вас есть ОС, такая как Microsoft Windows, или совместимая с .NET Framework или .NET Standard, и среда разработки, такая как Microsoft Visual Studio. Дополнительные сведения об установке библиотеки C# и системных требованиях вы найдете в документации Aspose.HTML.



Системные Tребования

Наши API поддерживаются на всех основных платформах и операционных системах. Перед выполнением кода убедитесь, что в вашей системе выполнены следующие предварительные условия.

  • Microsoft Windows или совместимая ОС с платформами .NET Framework, .NET Core, Windows Azure, Mono или Xamarin.
  • Среда разработки, такая как Microsoft Visual Studio.
  • Aspose.Html для .NET DLL, на который есть ссылка в вашем проекте – установите из NuGet с помощью кнопки «Загрузить» выше.

Другие поддерживаемые функции .NET API

Используя Aspose.HTML, расширенную библиотеку веб-скрапинга и анализа HTML, вы можете создавать, редактировать, перемещаться по узлам, извлекать данные, объединять и конвертировать файлы HTML, XHTML, MD, EPUB и MHTML в PDF, XPS, DOCX, изображения и другие форматы.