use strict;
my $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 .
]]>
';
my $regex = qr/(?: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/mp;
if ( $str =~ /$regex/g ) {
print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n";
# print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n";
# print "Capture Group 2 is $2 ... and so on\n";
}
# ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p'
# Named capture groups can be called via $+{name}
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 Perl, please visit: http://perldoc.perl.org/perlre.html