use strict;
my $str = '10-10-2019 14:04:25.863 +0200 WARN DispatchSjaak - Queued job id="c1111__c63422sss23344__search__search12339_157e345.73734_AF27BCF9-C4E0-4D04-B4E3-3r", seadex=application_wab_p
id="w34_aW0uY3Jpc2lz_aW0uY3Jpc2lz__search__search36_15703344710104.14022286_FB3D64CC-984D-4FAB-B724-5D14BA490FE3AppID == "ANDROID", "MB Android App", search_id="1570701613.3403_5F230059-1DF0-4750-B165-087Der444425949E17" - QUEUED reason="The maximum nu
= "HELL", "MB", search_id="xxx1570701613.3403_5F230059-1DF0-4750-B165-087Der444425933244349E17" - QUEUED reason="The maximum nu';
my $regex = qr/id\=\"(?<id>[a-zA-Z][^_]+(\.*))/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