Entfernen von Text aus DOCX in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronWord bietet mehrere Methoden zum Entfernen von Text aus Word-Dokumenten in C#, einschließlich des Entfernens ganzer Absätze, bestimmter Textabschnitte und des Auffindens von Text anhand des Inhalts vor dem Löschen, wobei die Integrität der Dokumentstruktur und der Formatierung erhalten bleibt.

Erste Schritte mit IronWord

Nutzen Sie IronWord heute kostenlos in Ihrem Projekt.

Erster Schritt:
green arrow pointer


als-Überschrift:2(Schnellstart: Text aus DOCX entfernen)

  1. IronWord über NuGet Package Manager installieren
  2. Laden Sie Ihre DOCX-Datei mit WordDocument
  3. Zugriff auf Absätze oder Textläufe per Index
  4. Aufruf von Remove() auf dem Zielelement
  5. Speichern Sie das geänderte Dokument

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronWord mit dem NuGet-Paketmanager.

    PM > Install-Package IronWord

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    using IronWord;
    
    // Load document
    WordDocument doc = new WordDocument("document.docx");
    
    // Remove second paragraph
    doc.Paragraphs[1].Remove();
    
    // Save changes
    doc.SaveAs("document_modified.docx");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronWord in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer

Wie kann ich einen ganzen Absatz aus einem Word-Dokument entfernen?

Um einen Absatz aus einem Word-Dokument zu entfernen, greifen Sie über die Paragraphs mithilfe seiner Indexposition darauf zu. In diesem Beispiel wird der Absatz bei Index 1 entfernt, wodurch sein gesamter Inhalt und seine Formatierung gelöscht werden. Die Struktur des Dokuments passt sich nach dem Entfernen automatisch an, wobei die nachfolgenden Absätze nach oben verschoben werden, um die Lücke zu füllen.

Bei der Arbeit mit der Absatzentfernung ist zu beachten, dass die Indizierung auf Null basiert. Der erste Absatz steht bei Index 0, der zweite bei Index 1 usw. Die Methode Remove() entfernt das Absatzelement vollständig aus der Dokumentstruktur, einschließlich aller Textläufe, Formatierungen und eingebetteter Inhalte wie Bilder oder Hyperlinks innerhalb dieses Absatzes.

:path=/static-assets/word/content-code-examples/how-to/remove-text-simple.cs
using IronWord;

// Load a DOCX document
WordDocument doc = new WordDocument("text_document.docx");

// Remove the second paragraph
doc.Paragraphs[1].Remove();

// Export the file
doc.SaveAs("text_document_modified.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Wie sieht das Dokument vor der Entfernung aus?

Word-Dokument mit drei farbigen Absätzen vor dem Entfernen von Text, mit Formatierungsband und Absatzwerkzeugen

Wie verändert sich die Dokumentstruktur nach dem Entfernen?

Word-Dokument mit drei farbigen Lorem-ipsum-Absätzen zur Veranschaulichung der Textformatierung vor der Absatzentfernung

Bei der Entfernung werden die Gesamtformatierung und die Struktur des Dokuments beibehalten. Die übrigen Absätze behalten ihre ursprünglichen Farben und Formatierungseigenschaften bei. Dies ist ein entscheidender Vorteil der Entfernungsmethoden von IronWord: Die Integrität des umgebenden Inhalts bleibt erhalten, während die gewünschten Elemente sauber entfernt werden.

Wie kann ich bestimmten formatierten Text innerhalb eines Absatzes entfernen?

Ein Absatz kann mehrere Textabschnitte enthalten, wobei jeder Abschnitt Text mit einheitlichen Formatierungseigenschaften wie Fettdruck, Kursivschrift oder Farbe darstellt. Das Verständnis von Textläufen ist für die präzise Bearbeitung von Inhalten entscheidend. Jedes Mal, wenn sich die Formatierung innerhalb eines Absatzes ändert, beginnt ein neuer Textdurchlauf. Wenn Sie zum Beispiel einen Satz haben, in dem ein Wort fett gedruckt ist, haben Sie normalerweise drei Textläufe: den Text vor dem fett gedruckten Wort, das fett gedruckte Wort selbst und den Text danach.

Um bestimmte formatierte Inhalte innerhalb eines Absatzes zu entfernen, greifen Sie auf die Sammlung Texts zu und wählen Sie den gewünschten Textabschnitt über den Index aus. Dieses Beispiel entfernt den dritten Textabschnitt (Index 2) aus dem ersten Absatz, während der übrige Inhalt unverändert bleibt. Diese granulare Steuerung ermöglicht es Ihnen, die Absatzstruktur beizubehalten und nur bestimmte formatierte Segmente zu entfernen.

:path=/static-assets/word/content-code-examples/how-to/remove-text-text-run.cs
using IronWord;

// Load a DOCX document
WordDocument doc = new WordDocument("sample.docx");

// Remove the first paragraph's third textrun
doc.Paragraphs[0].Texts[2].Remove();

// Export the file
doc.SaveAs("sample_after_textrun_removal.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Wenn Sie mit Textläufen arbeiten, denken Sie daran, dass das Entfernen eines Textlaufs die Formatierung der umliegenden Läufe nicht beeinträchtigt. Jeder Textlauf behält seine Formatierungseigenschaften unabhängig bei. So ist es möglich, bestimmte formatierte Inhalte chirurgisch zu entfernen, ohne das visuelle Erscheinungsbild des restlichen Textes zu beeinträchtigen.

Was passiert mit Textläufen vor dem Entfernen?

Word-Dokument zeigt Text mit unterstrichener Formatierung vor dem Entfernen von Text

Wie wirkt sich das Entfernen eines Textlaufs auf die Absatzformatierung aus?

Word-Dokument, das einen formatierten Absatz mit unterstrichenem Text nach einer bestimmten Textlaufentfernung zeigt

Wie in den Bildern zu sehen ist, wird durch das Entfernen eines bestimmten Textlaufs die Formatierung des restlichen Inhalts beibehalten. Der unterstrichene Text und andere Formatierungseigenschaften bleiben unverändert, um die Präzision der Textlaufmanipulation zu demonstrieren.

Wie finde und entferne ich Text nach Inhalt und nicht nach Position?

Die FindText Methode lokalisiert und entfernt Inhalte dynamisch anhand von Textübereinstimmungen und nicht anhand ihrer Position. Dies ist besonders nützlich, um ungültigen Text, Platzhalter oder bestimmte Inhalte irgendwo im Dokument zu entfernen, ohne deren genaue Position zu kennen. Die Methode gibt das übereinstimmende Textelement zurück oder null, falls es nicht gefunden wird. Dadurch wird ein sicheres Entfernen durch eine Nullprüfung vor dem Aufruf Remove ermöglicht.

Dieser Ansatz ist von unschätzbarem Wert, wenn es um Vorlagedokumente geht, bei denen Platzhaltertext entfernt werden muss, oder wenn Dokumente mit bekannten Fehlermustern bereinigt werden. Die Methode FindText führt standardmäßig eine Suche unter Berücksichtigung der Groß- und Kleinschreibung durch, um eine genaue Übereinstimmung mit dem Zielinhalt zu gewährleisten.

:path=/static-assets/word/content-code-examples/how-to/remove-text-find.cs
using IronWord;

// Load the document
WordDocument doc = new WordDocument("sample.docx");

// Find and remove erroneous text
var textToRemove = doc.FindText("ERRONEOUS TEXT IS HERE.");
textToRemove?.Remove();

// Save the cleaned document
doc.SaveAs("sample_cleaned.docx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Der Null-Bedingungsoperator (?.) im obigen Code ist entscheidend für die sichere Ausführung. Wenn der Text nicht gefunden wird, gibt FindText null zurück, und der Null-Bedingungsoperator verhindert eine NullReferenceException. Dieses Muster macht Ihren Code robuster, wenn Sie mit Dokumenten arbeiten, in denen der Zieltext nicht immer vorhanden ist.

Welchen Inhalt sollte ich vor der Verwendung von Find and Remove suchen?

Word-Dokument mit Lorem ipsum-Text mit fettgedrucktem 'FEHLERHAFTER TEXT IST HIER' vor der Verwendung von Suchen und Ersetzen

Wie behandelt FindText mehrere Vorkommen?

Word-Dokument mit unterstrichenen Textabschnitten nach dem Suchen und Entfernen von Lorem-ipsum-Inhalten

Bei der Verwendung von FindText ist zu beachten, dass das erste Vorkommen des passenden Textes zurückgegeben wird. Wenn Sie alle Vorkommen eines bestimmten Textes im gesamten Dokument entfernen müssen, implementieren Sie eine Schleife, in der so lange gesucht und entfernt wird, bis keine Übereinstimmungen mehr gefunden werden. Dieser iterative Ansatz gewährleistet eine umfassende Textentfernung im gesamten Dokument.

Die Funktion zum Suchen und Entfernen behält die Formatierung und Struktur des Dokuments außerhalb des entfernten Textes bei. Absatzumbrüche, die Formatierung des umgebenden Textes und die Dokumentstile bleiben erhalten, so dass die Konsistenz des Dokuments gewahrt bleibt und unerwünschte Inhalte entfernt werden.

Häufig gestellte Fragen

Wie kann ich in C# einen ganzen Absatz aus einem Word-Dokument entfernen?

Mit IronWord können Sie einen Absatz entfernen, indem Sie über die Paragraphs-Sammlung auf ihn zugreifen, indem Sie seine Indexposition verwenden und die Methode Remove() aufrufen. Zum Beispiel wird mit doc.Paragraphs[1].Remove() der zweite Absatz (Index 1) entfernt. Die Dokumentstruktur passt sich nach dem Entfernen automatisch an, wobei die nachfolgenden Absätze nach oben verschoben werden, um die Lücke zu füllen.

Was passiert mit der Dokumentstruktur, wenn ich Text entferne?

IronWord behält beim Entfernen von Text die Gesamtformatierung und -struktur des Dokuments bei. Die verbleibenden Absätze behalten ihre ursprünglichen Farben und Formatierungseigenschaften bei, und das Dokument wird automatisch umbrochen, um Lücken zu beseitigen. Dadurch wird sichergestellt, dass die Integrität des umgebenden Inhalts erhalten bleibt, während die gewünschten Elemente sauber entfernt werden.

Kann ich bestimmten formatierten Text innerhalb eines Absatzes anstelle des gesamten Absatzes entfernen?

Ja, IronWord ermöglicht es Ihnen, bestimmte Textpassagen innerhalb eines Absatzes zu entfernen. Da Absätze mehrere Textabschnitte enthalten können (die jeweils Text mit einheitlicher Formatierung darstellen), können Sie einzelne Abschnitte auswählen und entfernen, während der restliche Inhalt und die Struktur des Absatzes erhalten bleiben.

Was ist ein Textlauf in Word-Dokumenten?

In IronWord stellt ein Textlauf einen Teil des Textes innerhalb eines Absatzes dar, der konsistente Formatierungseigenschaften wie fett, kursiv oder Farbe hat. Jedes Mal, wenn sich die Formatierung innerhalb eines Absatzes ändert, beginnt ein neuer Textlauf. Das Verständnis von Textläufen ist entscheidend für die präzise Bearbeitung von Inhalten bei der Arbeit mit Word-Dokumenten.

Wie speichere ich Änderungen nach dem Entfernen von Text aus einem Word-Dokument?

Nachdem Sie Text mit IronWord entfernt haben, können Sie das geänderte Dokument durch Aufruf der Methode SaveAs() speichern. Beispiel: doc.SaveAs("document_modified.docx") speichert das aktualisierte Dokument mit allen Änderungen, die beim Entfernen vorgenommen wurden. Dadurch wird eine neue Datei erstellt, während das Originaldokument erhalten bleibt.

Werden beim Entfernen von Absätzen auch eingebettete Inhalte wie Bilder oder Hyperlinks gelöscht?

Ja, wenn Sie die Remove()-Methode von IronWord auf einen Absatz anwenden, wird das Absatzelement vollständig aus der Dokumentstruktur entfernt, einschließlich aller Textläufe, Formatierungen und eingebetteten Inhalte wie Bilder oder Hyperlinks in diesem Absatz.

Ahmad Sohail
Full-Stack-Entwickler

Ahmad ist ein Full-Stack-Entwickler mit einer soliden Grundlage in C#, Python und Webtechnologien. Er hat ein großes Interesse am Aufbau skalierbarer Softwarelösungen und genießt es, zu erkunden, wie Design und Funktionalität in realen Anwendungen aufeinandertreffen.

Bevor er dem Iron Software Team beitrat, arbeitete ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 28,054 | Version: 2025.12 gerade veröffentlicht