use strict;
my $str = 'table>
<tr>
<td>
<pre>1. APEAL/890/2010 HUSSAIN ISMAIL SATWILKAR SHRI C.K. PENDSE</pre>
</td>
</tr>
<tr>
<td>
<pre> [Criminal] MS.ROHINI DANDEKAR ADV.AP</pre>
</td>
</tr>
<tr>
<td>
<pre> V/S THE STATE OF MAHARASH PTD AS PER CTS ORD 7/9/17</pre>
</td>
</tr>
<tr>
<td>
<pre> TRA P.P.FOR P. P</pre>
</td>
</tr>
<tr>
<td>
<pre></pre>
</td>
</tr>
<tr>
<td>
<pre> REMARK : (By Accused against Conviction) Note: (1) Matter is Ready for final</pre>
</td>
</tr>
<tr>
<td>
<pre> hearing. (2) Accd. is in jail. (3) R & P with PB received. (4)</pre>
</td>
</tr>
<tr>
<td>
<pre> Muddemal article are to be called for. (5) Report received from</pre>
</td>
</tr>
<tr>
<td>
<pre> Nashik Central Prison stated therein that "Orig. accd. death dated</pre>
</td>
</tr>
<tr>
<td>
<pre> 20/11/2015 (Report kept at flag "A") . ....... Court (DB) for final</pre>
</td>
</tr>
<tr>
<td>
<pre> hearing.</pre>
</td>
</tr>
<tr>
<td>
<pre></pre>
</td>
</tr>
<tr>
<td>
<pre></pre>
</td>
</tr>
<tr>
<td>
<pre></pre>
</td>
</tr>
<tr>
<td>
<pre>2. APEAL/966/2011 ABDUL MALIK SHAIKH SHRI S. R. MITHARE</pre>
</td>
</tr>
<tr>
<td>
<pre> [Criminal]</pre>
</td>
</tr>
<tr>
<td>
<pre> V/S THE STATE OF MAHARASH</pre>
</td>
</tr>
<tr>';
my $regex = qr/<pre>(?<line>\d+\..+)<\/pre>/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