Ersetzen Sie Wörter im Dokument mit dem ONLYOFFICE-Makro

1 November 2023By Ksenija

Die Bearbeitung von Dokumenten ist ein grundlegender Aspekt unserer täglichen Arbeit, und wir sehnen uns häufig nach Tools, die uns die Last der sich wiederholenden Aufgaben abnehmen können. In diesem Blogbeitrag werden wir ein Makro erstellen, das Wörter im Dokument innerhalb einer Auswahl ersetzt.

Replace words in the document with ONLYOFFICE macro

Erstellung des Makros

Zunächst greifen wir im Dokumenteditor auf die aktuelle Datei zu. Dann zielen wir auf den markierten Text und erfassen die Werte. In diesem Bereich wollen wir Wörter finden und ersetzen:

const oDocument = Api.GetDocument();
const oRange = oDocument.GetRangeBySelect();
const rawText = oRange.GetText();

Dann löschen wir den markierten Text:

oRange.Delete();

Wir weisen das gesuchte Wort der Variablen wordToFind und das Wort, durch das wir es ersetzen wollen, der Variablen replacementWord zu:

// Definieren Sie das zu findende Wort und das Wort, durch das es ersetzt werden soll
const wordToFind = "oldWord"; // Ersetzen Sie "oldWord" durch das zu suchende Wort
const replacementWord = "newWord"; // Ersetzen Sie "newWord" durch das Wort, durch das es ersetzt werden soll

Wir wenden einen regulären Ausdruck auf den rawText (den Text innerhalb des ausgewählten Bereichs) an, um alle Vorkommen von wordToFind zu finden und sie durch replacementWord zu ersetzen. Der reguläre Ausdruck mit dem Flag “g” sorgt dafür, dass alle Vorkommen ersetzt werden. Der geänderte Text wird in der Variablen cleanedText gespeichert:

// Verwenden Sie einen regulären Ausdruck, um das Wort zu finden und zu ersetzen
const cleanedText = rawText.replace(new RegExp(wordToFind, "g"), replacementWord);

Sobald das Suchen und Ersetzen abgeschlossen ist, erstellen wir mit Api.CreateParagraph() einen neuen Absatz im Dokument. In diesem Absatz fügen wir den Text mit den ersetzten Wörtern ein. Schließlich fügen wir den geänderten Absatz wieder in das Dokument ein:

// Fügen Sie cleanedText mit der ursprünglichen Absatzstruktur ein
const oParagraph = Api.CreateParagraph();
oParagraph.AddText(cleanedText);
oDocument.InsertContent([oParagraph]);

Das gesamte Makro sieht wie folgt aus:

(function()
{
const oDocument = Api.GetDocument();
const oRange = oDocument.GetRangeBySelect();
const rawText = oRange.GetText();
oRange.Delete();
// Definieren Sie das zu findende Wort und das Wort, durch das es ersetzt werden soll
const wordToFind = "oldWord"; // Ersetzen Sie "oldWord" durch das zu suchende Wort
const replacementWord = "newWord"; // Ersetzen Sie "newWord" durch das Wort, durch das es ersetzt werden soll
// Verwenden Sie einen regulären Ausdruck, um das Wort zu finden und zu ersetzen
const cleanedText = rawText.replace(new RegExp(wordToFind, "g"), replacementWord);
// Fügen Sie cleanedText mit der ursprünglichen Absatzstruktur ein
const oParagraph = Api.CreateParagraph();
oParagraph.AddText(cleanedText);
oDocument.InsertContent([oParagraph]);
})();

Führen wir nun unser Makro aus und sehen wir, wie es funktioniert!

Wir hoffen, dass dieses Makro eine nützliche Ergänzung Ihres Arsenals ist und Ihre Dokumentenbearbeitung rationalisiert. Die ONLYOFFICE-Makros wurden entwickelt, um Ihren Arbeitsablauf auf ein neues Niveau zu heben.

Verpassen Sie nicht die Chance, die Leistung der ONLYOFFICE API zu nutzen. Unsere umfangreiche Bibliothek von API-Methoden ist Ihr Schlüssel, um Ihre Ideen in die Realität umzusetzen. Wenn Sie Fragen oder innovative Konzepte haben, können Sie diese gerne mit uns teilen. Ihre Anregungen sind uns sehr wichtig, und wir freuen uns über die Möglichkeit der Zusammenarbeit mit Ihnen. Wir wünschen Ihnen viel Erfolg bei Ihren Versuchen!