Wie zum extrahieren von text aus docx-Datei mit Nodejs

möchte ich zum extrahieren von text aus docx-Datei, ich habe versucht mit Mammut

var mammoth = require("mammoth");
mammoth.extractRawText({path: "./doc.docx"})
    .then(function(result){
        var text = result.value; //The raw text 

        //this prints all the data of docx file
        console.log(text);

        for (var i = 0; i < text.length; i++) {
            //this prints all the data char by char in separate lines
            console.log(text[i]);
        }
        var messages = result.messages;
    })
    .done();

aber das problem hier ist, dass in dieser for-Schleife möchte ich die Daten Zeile für Zeile anstelle von char durch char, bitte helfen Sie mir hier oder gibt es irgendeine andere Methode, die Sie kennen?

  • Was meinst du Zeile? Wie die einzelnen Zeilen der word-Dokument oder Absätze, getrennt durch Zeilenumbrüche?
  • wie die einzelnen Zeilen des Dokuments @ExplosionPills
  • Eine Möglichkeit ist das aufteilen der text durch „\n“s !
  • hast du diesen code ausführen, in der Konsole ist es Druck char von char-Daten in den neuen Zeilen. es gibt keine Notwendigkeit, durch split „\n“. @tashakori
  • Nein! Du hast es falsch:-). Ich meine die Aufteilung der text selbst von „\n“ – Zeichen. Und dann haben Sie ein array von Zeilen! Var lines = text.split („\n“). Dann die Zeilen [i] gibt die i ‚ te Zeile des Textes.
  • danke, das hat mir geholfen. @tashakori

InformationsquelleAutor iwayankit | 2017-07-06



One Reply
  1. 1

    Einer Methode zum abrufen der ganze text und teilen Sie Sie dann durch '\n':

    import superagent from 'superagent';
    import mammoth from 'mammoth';
    
    const url = 'http://www.ojk.ee/sites/default/files/respondus-docx-sample-file_0.docx';
    
    const main = async () => {
    
      const response = await superagent.get(url)
        .parse(superagent.parse.image)
        .buffer();
    
      const buffer = response.body;
    
      const text = (await mammoth.extractRawText({ buffer })).value;
      const lines = text.split('\n');
    
      console.log(lines);
    };
    
    main().catch(error => console.error(error));

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.