const fs = require('fs'); // var fileRefer=new Array(); var fileRefer = fs.readFileSync('D:\\NgageAuto\\LoginID\\Creds.txt').toString().split("\n"); for(i in fileRefer) { console.log(fileRefer[i]); }Salida: - Fecha: 2021-11-08 16:56:42 ID de inicio de sesión: pvgA1245 Contraseña: Root@123 es uno de los ejemplos que está en el archivo. Quiero el valor de ID de inicio de sesión, es decir, "pvgA1245 y valor de contraseña, es decir, Root@123
Por favor, ayúdame, ¿cómo puedo hacerlo?
Hay cientos de soluciones a este problema, algunas tienen ventajas en diferentes escenarios que otras.
Aquí hay algunos para usar split() o usar una coincidencia de expresiones regulares. Cada uno usa desestructuración o simplemente "normalmente asigna" las variables. Regex tiene la ventaja de que se puede usar de manera más flexible, por ejemplo, si a veces el esquema de línea es diferente y falta la contraseña. Pero si puede estar seguro de que el esquema es siempre el mismo o simplemente quiere omitir líneas que no tienen todos los valores, split() está totalmente bien.
Simplemente agregaría el fragmento de código relevante dentro de su ciclo for
let i = "Date: 2021-11-08 16:56:42 LoginID: pvgA1245 Password: Root@123"; // split and destructure const [ , , , , id, ,pw,] = i.split(" "); console.log(id, pw); // split and normally assign const a = i.split(" "); const id2 = a[4]; const pw2 = a[6]; console.log(id2, pw2); // regex and destructure const [, id3, pw3] = i.match(/(?:LoginID: ([^\s]*)) ?(?:Password: ([^\s]*))/); console.log(id3, pw3); // regex and normally assign const m = i.match(/(?:LoginID: ([^\s]*)) ?(?:Password: ([^\s]*))/); const id4 = m[1]; const pw4 = m[2]; console.log(id4, pw4);