C#-API zum Analysieren von Markdown-Dateien
Verwenden Sie C#-Bibliotheksfunktionen, um Elemente zu erstellen, den Inhalt vorhandener Knoten eines MD-Dokuments zu entfernen oder zu bearbeiten.
Analysieren Sie Markdown-Dateien mit C#
Die Bibliothek
Aspose.HTML for .NET
bietet eine Markdown-Parsing-API für die C#-Plattform. Der Namespace
Aspose.Html.Toolkit.Markdown.Parser
enthält Klassen und Methoden, um eine vollständige Markdown-Analyse bereitzustellen und Rendern.
Sie können MD-Dateien erstellen, bearbeiten, speichern, zusammenführen, in andere Dateiformate konvertieren und Links, Listen, Codeblöcke, Bilder und andere Elemente zu Markdown-Dateien hinzufügen, indem Sie den Links folgen:
So analysieren Sie Markdown in C#
Die Aufgabe der programmgesteuerten Bearbeitung von Markdown in C# besteht darin, Elemente in der MD-Dokumentstruktur zu ändern. Aspose.HTML for .NET API unterstützt eine Reihe von MD-Elementen, die in GitHub Flavored Markdown Spec definiert sind, zusammen mit Regeln darüber, wie die Elemente verschachtelt werden können. Darüber hinaus enthält der Namespace Aspose.Html.Toolkit.Markdown.Extensions Klassen und Methoden zur Bearbeitung der Markdown-Syntax Baum basierend auf Spezifikationen, die nicht Teil der GFM-Spezifikation sind. Betrachten Sie einfache Schritte zum Analysieren und Bearbeiten von Markdown. Lassen Sie uns Markdown analysieren und Textinhalte darin bearbeiten:
Markdown in C# parsen und bearbeiten
// 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);
Schritte zum Parsen und Bearbeiten von Markdown in C#
Betrachten Sie einfache Schritte zum Analysieren von Markdown und zum Bearbeiten vorhandener Textinhalte:
- Geben Sie den Pfad zur MD-Quelldatei an und verwenden Sie MarkdownParser() -Konstruktor, um eine neue Instanz der MarkdownParser-Klasse zu initialisieren.
- Rufen Sie die Methode ParseFile() auf, um Markdown zu parsen und einen Syntaxbaum zu erhalten.
- Erstellen Sie ein TreeWalker-Objekt und navigieren Sie durch den Markdown-Syntaxbaum und entfernen Sie unnötigen Inhalt – EmphasisSyntax-Knoten.
- Verwenden Sie die Eigenschaft SyntaxFactory, um eine Syntaxfabrik zum Erstellen neuer Elemente zu erhalten.
- Erstellen Sie einen neuen Textknoten und fügen Sie der neuen Hervorhebung Textinhalte hinzu.
- Verwenden Sie die Methode AppendChild(), um den neuen Knoten zum Syntaxbaum hinzuzufügen.
- Speichern Sie die bearbeitete MD-Datei mit der Methode Save().
Dokumentation
Um mehr über die Aspose.HTML-API zu erfahren, besuchen Sie bitte unseren
Dokumentation
-Leitfaden. Sie können die Beispiele aus dem Repository
GitHub
herunterladen. Sie sind Open Source und können in eigenen Anwendungen frei verwendet werden.
Markdown ist eine einfache Auszeichnungssprache, mit der Sie einfachen Text formatieren können. John Gruber, der Autor von MD, hat die Formatierungssyntax von Markdown mit dem Ziel entworfen, sie so lesbar wie möglich zu machen. Markdown wird häufig als Format für Dokumentationen und Readme-Dateien verwendet, da es das Schreiben in einem leicht lesbaren und leicht zu schreibenden Stil ermöglicht. Der Dokumentationsartikel
Markdown-Syntax
enthält Informationen zu den wichtigsten Markdown-Elementen, Details und Beispielen der Markdown-Syntax.
Erste Schritte mit der Aspose.HTML for .NET API
Es gibt mehrere Möglichkeiten, die Bibliothek Aspose.HTML for .NET auf Ihrem System zu installieren:
- Installieren Sie ein NuGet-Paket mithilfe der NuGet Package Manager-GUI.
- Installieren Sie ein NuGet-Paket mithilfe der Paket-Manager-Konsole.
- Installieren Sie Aspose.HTML for .NET über MSI.
Diese Bibliothek unterstützt das Parsen von HTML5, CSS3, SVG und HTML Canvas, um ein Document Object Model (DOM) basierend auf dem WHATWG DOM-Standard zu erstellen. Aspose.HTML for .NET ist vollständig in C# geschrieben und kann verwendet werden, um jede Art von 32-Bit- oder 64-Bit-.NET-Anwendung zu erstellen, einschließlich ASP.NET, WCF, WinForms und .NET Core. Stellen Sie vor dem Ausführen des Beispielcodes für die .NET-Konvertierung sicher, dass Sie über ein Betriebssystem wie Microsoft Windows oder ein mit .NET Framework oder .NET Standard kompatibles Betriebssystem und eine Entwicklungsumgebung wie Microsoft Visual Studio verfügen. Weitere Einzelheiten zur Installation der C#-Bibliothek und zu den Systemanforderungen finden Sie in der Aspose.HTML-Dokumentation.
Systemanforderungen
Unsere APIs werden auf allen wichtigen Plattformen und Betriebssystemen unterstützt. Bevor Sie den Code ausführen, stellen Sie bitte sicher, dass die folgenden Voraussetzungen auf Ihrem System erfüllt sind.
- Microsoft Windows oder ein kompatibles Betriebssystem mit .NET Framework, .NET Core, Windows Azure, Mono oder Xamarin-Plattformen.
- Entwicklungsumgebung wie Microsoft Visual Studio.
- Aspose.HTML for .NET-DLL, auf die in Ihrem Projekt verwiesen wird – Installieren Sie von NuGet mithilfe der Download-Schaltfläche oben.