use strict;
my $str = '<div>
<p style="text-align: left;">Style: <span style="float: right;">Casual</span></p>
</div>
<div>
<p style="text-align: left;">Color: <span style="float: right;">float</span></p>
</div>
<div>
<p style="text-align: left;">Pattern Type: <span style="float: right;">Letter</span></p>
</div>
<div>
<p style="text-align: left;">Neckline: <span style="float: right;">Round Neck</span></p>
</div>
<div>
<p style="text-align: left;">Length: <span style="float: right;">Regular</span></p>
</div>
<div>
<p style="text-align: left;">Type: <span style="float: right;">Pullovers</span></p>
</div>
<div>
<p style="text-align: left;">Details: <span style="float: right;">Frill</span></p>
</div>
<div>
<p style="text-align: left;">Sleeve Length: <span style="float: right;">Long Sleeve</span></p>
</div>
<div>
<p style="text-align: left;">Sleeve Type: <span style="float: right;">Drop Shoulder</span></p>
</div>
<div>
<p style="text-align: left;">Season: <span style="float: right;">Spring/Fall</span></p>
</div>
<div>
<p style="text-align: left;">Composition: <span style="float: right;">5% Spandex</span></p>
</div>
<div>
<p style="text-align: left;">Composition: <span style="float: right;">95% Polyester</span></p>
</div>
<div>
<p style="text-align: left;">Fabric: <span style="float: right;">Slight Stretch</span></p>
</div>
<div>
<p style="text-align: left;">Fit Type: <span style="float: right;">Regular Fit</span></p>
</div>
<p></p>
<table border="1">
<thead>
<tr>
<th>size</th>
<th>Shoulder</th>
<th>Bust</th>
<th>Length</th>
<th>Sleeve Length</th>
<th>Bicep Length</th>
<th>Cuff</th>
</tr>
</thead>
<tbody>
<tr>
<td>XS</td>
<td>63 cm</td>
<td>104 cm</td>
<td>63 cm</td>
<td>51 cm</td>
<td>45 cm</td>
<td>17 cm</td>
</tr>
<tr>
<td>S</td>
<td>64 cm</td>
<td>108 cm</td>
<td>64 cm</td>
<td>52 cm</td>
<td>46 cm</td>
<td>18 cm</td>
</tr>
<tr>
<td>M</td>
<td>65 cm</td>
<td>112 cm</td>
<td>65 cm</td>
<td>53 cm</td>
<td>47 cm</td>
<td>19 cm</td>
</tr>
<tr>
<td>L</td>
<td>66 cm</td>
<td>116 cm</td>
<td>66 cm</td>
<td>54 cm</td>
<td>48 cm</td>
<td>20 cm</td>
</tr>
</tbody>
</table>';
my $regex = qr/(?i)(>[^<\/\nA-Za-z]{0,5})\Qfloat\E([^>\/\nA-Za-z]{0,5}<)/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