const regex = new RegExp('(?P<Ano>[2018]+)\\|(?P<Mes>[A-Za-z]+)\\|(?P<RamGrl>[A-Za-z\\s]+)\\|(?P<Suc>[\\w\\s]+)\\|(?P<Ofn>[\\w\\s\\d\\(\\)\\-\\.\\&\\,]+)\\|(?P<Pmt>[\\w\\s\\d\\(\\)\\-\\.\\,\\¥\\*\\%\\&\\Ü\\Ñ]+)\\|(?P<Agente>[\\w\\d\\s\\.\\,\\¥\\¤\\$\\&\\%\\-]+)\\|(?P<Mon>[A-Za-z]+)\\|(?P<SucEmi>[\\w\\s\\.\\-\\(\\)]+)\\|(?P<RamoEmi>[\\w\\s\\.\\/]+)\\|(?P<Poliza>[0-9]+)\\|(?P<FecFinVig>[\\d\\/]+)\\|(?P<Cliente>()|[a-zA-ZÀ-ÖØ-öø-ÿ\\s\\.\\,\\-\\*\\\\'\\%\\d\\&\\¥\\¤\\!\\¡\\+\\`\\´\\#\\(\\)\\;\\€\\"\\\\¨\\:\\_\\@\\‘\\Ã\\.+]+)\\|(?P<StaMc>[\\w\\d]+)\\|(?P<FecMC>[\\d\\/]+)\\|(?P<NoAPet>[MSX]+)\\|(?P<Renovadas>[\\d]+)\\|(?P<Observaciobnes>(()|[a-zA-ZÀ-ÖØ-öø-ÿ\\d\\s\\.\\,\\:\\+\\(\\)\\¥\\¤\\-\\#\\;\\&\\$\\*\\%\\\\'\\/\\´\\!\\@\\"\\‘\\Ã])+)\\|(?P<Motivo>[S/C]+)\\|(?P<PrimaEmi>[\\-\\d]+)\\|(?P<PrimaCob>[0-9]+)\\|(?P<Siniestros>[\\d\\-]+)\\|(?P<PolizaNva>[0-9]+)\\|(?P<FecRenovacion>[\\d\\/]+)\\|(?P<PrimaDRenov>[0-9]+)\\|(?P<CobranzaDRen>[0-9]+)\\|', 'gm')
const str = `2018|Feb|AUTOS|MATRIZ|OFICINA MATRIZ|ARMANDO LEON PTACNIK|ARMANDO LEON HERNANDEZ 4684|DLL|ARMANDO L. PTAN|TURISTAS|1067|17/02/2018|ALONSO HERNANDEZ ZAZUETA €|X|01/01/2000|X|45||S/C|368|368|0|0|01/01/2000|0|0|
2018|Feb|AUTOS|MATRIZ|OFICINA MATRIZ|ARMANDO LEON PTACNIK|ARMANDO LEON HERNANDEZ 4684|DLL|ARMANDO L. PTAN|OBLIGATORIO TURISTAS|1067|17/02/2018|ALONSO HERNANDEZ ZAZUETA €|X|01/01/2000|X|45||S/C|1|1|0|0|01/01/2000|0|0|
2018|Mar|AUTOS|MATRIZ|OFICINA MATRIZ|ARMANDO LEON PTACNIK|ARMANDO LEON HERNANDEZ 4684|NAL|ARMANDO L. PTAN|MOTOCICLETAS|187|15/03/2018|ALONSO HERNANDEZ ZAZUETA €|R000216|12/03/2018|S|45|POLIZA YA RENOVADA|S/C|901|901|0|216|12/03/2018|797|0|
2018|Mar|AUTOS|MATRIZ|OFICINA MATRIZ|ARMANDO LEON PTACNIK|ARMANDO LEON HERNANDEZ 4684|NAL|ARMANDO L. PTAN|OBLIGATORIO MOTOCICLETAS|187|15/03/2018|ALONSO HERNANDEZ ZAZUETA €|X|01/01/2000|X|45||S/C|14|14|0|0|01/01/2000|0|0|
2018|Jul|AUTOS|MATRIZ|OFICINA MATRIZ|OFICINA MATRIZ|ROQUE ALONSO P Y ASOCIADOS AGENTE DE SEGUROS Y DE FIANZAS SA DE CV 9761|NAL|MATRIZ|SEGURO DE AUTOMOVILES|767608|07/07/2018|GUSTAVO MONTAÑO ALVAREZ|S806612|19/06/2018|X|0|RENOVADA X NUMERO DE SERIE GUSTAVO MONTAÑO ALVAREZ|S/C|13395|11721|0|0|01/01/2000|0|0|`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions