Это выражение может быть не самым быстрым, однако оно возвращает желаемый результат во второй группе захвата:
(.*)USER = ([^\s]+)([\s\S]*)
Если вы хотите, вы можете добавить больше границ, например, список символов вместо ([^\s]+)
или, возможно, начальный и конечный символы :
^(.*)USER = ([^\s]+)([\s\S]*)$
JavaScript Demo
const regex = /(.*)USER = ([^\s]+)([\s\S]*)/gm;
const str = `(********* TOP SEPARATOR ***************************************\\ *****************) 48 Tj 0 -1.1 Td (* REPORT = COURR QRCODE MOB \\ USER = BINM3 ) 48 Tj 0 -2.2 Td ( DESC. = COURRIER E-CLIENT QR CODE MOBILE \\ FORM = 72A2 ) 48 Tj 0 -3.3 Td ( CAPTURE DATE = 15/05/19 (19.135) TIME = 14.30.45 \\ (VTUB001 ) *) 48 Tj 0 -4.4 Td (************************************ \\
TEST FILE TEST FILE
(********* END SEPARATOR ***************************************\\ *****************) 48 Tj 0 -1.1 Td (* REPORT = COURR QRCODE MOB \\ USER = BINM3 ) 48 Tj 0 -2.2 Td ( DESC. = COURRIER E-CLIENT QR CODE MOBILE \\ FORM = 72A2 ) 48 Tj 0 -3.3 Td ( CAPTURE DATE = 15/05/19 (19.135) TIME = 14.30.45 \\ (VTUB001 ) *) 48 Tj 0 -4.4 Td (************************************ \\`;
const subst = `$2`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
RegEx Circuit
Вы также можете визуализировать свои выражения в jex.im :