use strict;
my $str = '<a href="/video5505298733/travel_and_tourism_recovery_coronavirus." title="The places and companies missing tourist dollars most.">The places and companies missing tourist dollars most.</a></p><p class="info"><span class="bg"><span class="duration">10 min</span><a href="/get/index.php?id=qafMsaaScGLPuKqGuanBpZjHtGHKppeHpJu5r6G9raaHoqa3tJS-ope5tJK6s5TLqp8"><span class="name">CORONAVIRUS</span></a><span><span class="bolder"> - </span> 1.7k <span class="bolder">Views</span></span><span class="text-disabled"><span class="bolder"> - </span> 2 days ago</span><span class="bolder"> - </span></span></p></div></div> <div class="thumb-lock "><div class="thumb-big"><div class="thumb"><a href="/midia54891337/PICSNUM/russia_fire_coronavirus_patients_intl"><img src="lightbox.gif" data-src="https://cdn-pic.cnews-cdn.com/videos/thumbs169/22/d3/a2/22d3a23423dfda7f5/22d3a2dfbb9fdfgd43f5.PICNUM.jpg" /></a>';
my $regex = qr`href="(?!(?:/get/index\.php|\S*/PICSNUM/))([a-z0-9-_\/.]+)`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