use strict;
my $str = '" Xpath входящего формата
Допустипы значения: XPath, ""константа""- должна быть в 1 столбце(<E0065>RECADV</E0065>), ""enum(, , ,)"" - если поле может принимать фиксированный набор значений
";квалификатор
;
;
hardcode=Сфера КУРЬЕР;
;
;
;
hardcode=02;
;
E1EDK02-67;
E1EDK03-67;
hardcode=643;
;
;
;
;
E1EDKA1-101-135;"WE
E1EDKA1-64-66 (3)"
hardcode=4025413896;
hardcode=997850001;
;
;
;
;
E1EDKA1-719-721;"WE
E1EDKA1-64-66 (3)"
E1EDKA1-390-398;"WE
E1EDKA1-64-66 (3)"
E1EDKA1-346-380;"WE
E1EDKA1-64-66 (3)"
E1EDKA1-241-275;"WE
E1EDKA1-64-66 (3)"
;
;
;
E1EDK28-224-253;
;
E1EDK28-84-153;
E1EDK28-67-83;
E1EDK28-154-223;
;
;
;
;
;
E1EDKA1-101-135;"RG
E1EDKA1-64-66 (3)"
hardcode=4025413896;
hardcode=997850001;
;
;
;
E1EDKA1-719-721;"RG
E1EDKA1-64-66 (3)"
E1EDKA1-390-398;"RG
E1EDKA1-64-66 (3)"
E1EDKA1-346-380;"RG
E1EDKA1-64-66 (3)"
E1EDKA1-241-275;"RG
E1EDKA1-64-66 (3)"
;
;
;
;
;
;
E1EDP01-64-69;
E1EDP19-102-171;
E1EDK01-218-220;
E1EDP26-64-66;
;
Calculation;
E1EDP05-177-191;
;
;
E1EDP04-71-87;
hardcode=процент;
;
E1EDP04-88-105;
;
;
;
E1EDS01-67-84;"10
E1EDS01-64-66 (3)"
E1EDS01-67-84;"11
E1EDS01-64-66 (3)"
E1EDS01-67-84;"5
E1EDS01-64-66 (3)"
E1EDS01-67-84;"5
E1EDS01-64-66 (3)"
;
;
;
;
hardcode=4025413896;
hardcode=Руководитель секции управления сервисной сетью в странах СНГ;
;
hardcode=Нигматуллин ;
hardcode=Ринат ;
hardcode=Фаритович;
;
;
;
;
';
my $regex = qr/(E1E\w{4,5})-(\d{2,3})-(\d{2,3});("(\w{1,3})\W*\n(E1E\w{4,5})-(\d{2,3})-(\d{2,3})[^"]+")?/p;
my $subst = 'gir:parseIdoc(\'$1\',$2,$3,\'$5\',$7)';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
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