const regex = /(?:demande|incident).*(?'num_externe'INC[0-9]*).*(?:\n.*)*Nom\s*:\s*(?'ins_libl'.*\)).*(?:\n.*)*Ville\s*:\s*(?'apt_localisation'.*?)\s*(?:\n.*)*-\s*Demandeur\s*:\s*(?'apt_nom'.*?,.*?),(?'apt_telephone'.*?),.*(?:\n.*)*Cat.gorie\s*:\s*(?'tsy_lib'.*?)\s*(?:\n.*)*\s*-.*Description.*?:\s*(?:\n.*)*\s*o\s*(?'commentaire_externe'.*?)\s*\n/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(?:demande|incident).*(?\'num_externe\'INC[0-9]*).*(?:\\n.*)*Nom\\s*:\\s*(?\'ins_libl\'.*\\)).*(?:\\n.*)*Ville\\s*:\\s*(?\'apt_localisation\'.*?)\\s*(?:\\n.*)*-\\s*Demandeur\\s*:\\s*(?\'apt_nom\'.*?,.*?),(?\'apt_telephone\'.*?),.*(?:\\n.*)*Cat.gorie\\s*:\\s*(?\'tsy_lib\'.*?)\\s*(?:\\n.*)*\\s*-.*Description.*?:\\s*(?:\\n.*)*\\s*o\\s*(?\'commentaire_externe\'.*?)\\s*\\n', 'gm')
const str = `<![CDATA[ Bonjour,
La facture proforma de la demande n°INC0937639 a été mise à jour Pour accéder à ce dossier de nature " demande ", cliquer ici .
Détail des informations :
- Date de création : 21/03/2019 15:51:54
- Site concerné :
o Nom : RRAA COURS LA VILLE (00363800)
o Etage :
o Bureau :
o Adresse 1 : 55 RUE GEORGES CLEMENCEAU
o Adresse 2 :
o Ville : COURS LA VILLE
o CP : 69470
o Téléphone : 0474647881
o Fax : 0474647888
- Horaires du site :
o Statut : Ouvert LP : BERNARD,franck Lu=Fermé Fermé Ma=08H30-12H00 13H30-17H45 Me=08H30-12H00 13H30-17H45 Je=08H30-12H00 14H15-17H45 Ve=08H30-12H00 13H30-17H45 Sa=08H30-12H00 Fermé Di=Fermé Fermé
- Demandeur : FILLON,LOREN,0474647881,
- Logisticien :
o Monsieur BERNARD, franck
- Equipe d'affectation :LP
- Intervenant : BERNARD franck
- Catégorie : MULTITECHNIQUE\\Petits travaux\\Menuiserie
- Description du dossier :
o Pose d'une plaque pour boucher l'ouverture sur la boite aux lettres bureau RA
Pour accéder à ce dossier, cliquer ici .
]]>
`;
// 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