我的目标是在预定义文本之后获取某个字符串。在这种情况下,我想阅读以下值:
我发现这可以使用正则表达式,因此我尝试了这个:
const fs = require("fs");
const PDFParser = require("pdf2json");
// Get all the filenames from the patients folder
const files = fs.readdirSync("templates");
// All of the parse patients
let patients = [];
// Make a IIFE so we can run asynchronous code
(async () => {
// Await all of the patients to be passed
// For each file in the patients folder
await Promise.all(files.map(async (file) => {
// Set up the pdf parser
let pdfParser = new PDFParser(this, 1);
// Load the pdf document
pdfParser.loadPDF(`templates/${file}`);
// Parsed the patient
let patient = await new Promise(async (resolve, reject) => {
// On data ready
pdfParser.on("pdfParser_dataReady", (pdfData) => {
// The raw PDF data in text form
const raw = pdfParser.getRawTextContent().replace(/\r\n/g, " ");
// Return the parsed data
resolve({
gesamtbetrag: /Amount\s(:*?)--/i.exec(raw)[1].trim()
});
});
});
// Add the patient to the patients array
patients.push(patient);
}));
// Save the extracted information to a json file
fs.writeFileSync("patients.json", JSON.stringify(patients));
})();
我收到我的数组位于位置 1 null 的错误:
无法读取 null 的属性“1”
谢谢