const regex = /^(?<tipo_de_registro>\d)(?<codigo_de_retorno>\d)(?<literal_de_retorno>.{7})(?<codigo_de_servico>\d{2})(?<literal_de_servico>.{15})(?<agencia>\d{4})(?:\d{2})(?<conta>\d{5})(?<dac>\d{1})(?:.{8})(?<nome_da_empresa>.{30})(?<codigo_do_banco>\d{3})(?<nome_do_banco>.{15})(?<data_de_geracao>\d{6})(?<desidade>\d{5})(?<unidade_de_desidade>.{3})(?<numero_sequencial_arq_retorno>\d{5})(?<data_de_credito>\d{6})(?:.{275})(?<numero_sequencial>\d{6})/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^(?<tipo_de_registro>\\d)(?<codigo_de_retorno>\\d)(?<literal_de_retorno>.{7})(?<codigo_de_servico>\\d{2})(?<literal_de_servico>.{15})(?<agencia>\\d{4})(?:\\d{2})(?<conta>\\d{5})(?<dac>\\d{1})(?:.{8})(?<nome_da_empresa>.{30})(?<codigo_do_banco>\\d{3})(?<nome_do_banco>.{15})(?<data_de_geracao>\\d{6})(?<desidade>\\d{5})(?<unidade_de_desidade>.{3})(?<numero_sequencial_arq_retorno>\\d{5})(?<data_de_credito>\\d{6})(?:.{275})(?<numero_sequencial>\\d{6})', 'gm')
const str = `02RETORNO01COBRANCA 063700710369 MINASMAQUINAS ADM CONS LTDA 341BANCO ITAU S.A.26052101600BPI03305270521 000001maynewayent.com `;
// 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