const regex = /(?i)(>[^<\/\nA-Za-z]{0,5})\Qfloat\E([^>\/\nA-Za-z]{0,5}<)/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(?i)(>[^<\\\/\\nA-Za-z]{0,5})\\Qfloat\\E([^>\\\/\\nA-Za-z]{0,5}<)', 'gm')
const 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>`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
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 JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions