$re = '/<DIV\s*class="[^"]*lesson.*><[aA][^>]*class=large-text[^>]*href\s*=[\*"|\'](.*?)[\*"|\']>((.|\n)*?)<\/[aA]>[.|\n]*<\/DIV|div>/';
$str = '<form action="#" id="ModalFormB" method="POST">
<table>
<colgroup>
<col class="nome_riga">
<col class="desc_riga">
<col class="normale" span="<?=$results[\'colonne\']-3?>">
<col class="ultima">
</colgroup>
<tr class="nascosta">
<th class="nome_riga"></th>
<th class="desc_riga"></th>
<th class="normale" colspan="<?=$results[\'colonne\']-3?>"></th>
<th class="ultima"></th>
</tr>
<tr>
<td colspan="<?=$results[\'colonne\']?>" class="verde">B. Impianti di generazione di energia
(termica, elettrica, cogenerazione, ...)<br> Aggiungere nuove
colonne in caso l\'impianto sia dotato di più di 4 generatori.
<input type="hidden" name="IdQuestionario" value="<?=$IdQuestionario?>" />
</td>
</tr>
<?=$results[\'Intestazione\']?>
<tr class="required">
<td class="capolinea">B0.</td>
<td class="grassetto">Funzione</td>
<?=$results[\'Funzione\']?>
<td> </td>
</tr>
<tr class="required">
<td class="capolinea">B1.</td>
<td class="grassetto">Potenza termica nominale</td>
<?=$results[\'PotenzaTermica\']?>
<td class="corsivo">Indicare la potenza termica nominale di ogni
generatore [kW]</td>
</tr>
<tr class="required">
<td class="capolinea">B2.</td>
<td class="grassetto">Potenza elettrica nominale</td>
<?=$results[\'PotenzaElettrica\']?>
<td class="corsivo">Indicare la potenza elettrica nominale di ogni
generatore [kW]</td>
</tr>
<tr class="required">
<td class="capolinea">B3.</td>
<td class="grassetto">Fonti energetiche utilizzate</td>
<?=$results[\'Fonti\']?>
<td class="corsivo">Indicare per ogni unità di generazione la/le
fonte/fonti utilizzata/e per produzione di energia termica,
rinnovabile o non rinnovabile (in caso di recuperi da processi
industriali, specificare la fonte utilizzata nel processo). Nel caso
di più fonti separare le singole fonti utilizzando il ; (punto e
virgola).
<br>
<b>Indicare una delle seguenti voci: pellet di legno;
cippato di legno; vinacce; gusci; sansa; altra biomassa legnosa;
olio vegetale grezzo; altri bioliquidi; biogas; rifiuti
industriali; rifiuti urbani; energia solare termica; energia
geotermica; carbone; gas naturale; gasolio; altri prodotti
petroliferi; pompa di calore idrotermica; pompa di calore
aerotermica; pompa di calore geotermica. </b></td>
</tr>
<tr class="required">
<td class="capolinea" rowspan="2">B4.</td>
<td class="grassetto" rowspan="2">Rendimento di conversione medio
dell\'impianto</td>
<?=$results[\'RendimentoImpianto\']?>
<td> </td>
</tr>
<tr class="required">
<?=$results[\'RendImpCostr\']?>
<td>specificare se: dichiarato dal costruttore o dato medio ricavato
in esercizio</td>
</tr>
<tr class="cogenerazione">
<td class="capolinea" rowspan="2">B5.</td>
<td class="grassetto" rowspan="2">Rendiemento di conversione medio
dell\'impianto che produce elettricità</td>
<?=$results[\'RendimentoElettrico\']?>
<td> </td>
</tr>
<tr class="cogenerazione">
<?=$results[\'RendElCostr\']?>
<td>specificare se: dichiarato dal costruttore o dato medio ricavato
in esercizio</td>
</tr>
<tr>
<td class="capolinea">B6.</td>
<td class="grassetto">Sigla generatore</td>
<?=$results[\'SiglaGeneratore\']?>
<td class="corsivo">La sigla del generatore riportata
nell\'autorizzazione alle emissioni in atmosfera (rilasciata dalla
Provincia ai sensi del DPR n. 203 del 1988 o del D.Lgs. n. 152 del
2006), <b>se l\'impianto prevede il rilascio di tale autorizzazione</b></td>
</tr>
<tr>
<td class="capolinea">B7.</td>
<td class="grassetto">Ore di funzionamento annue</td>
<?=$results[\'OreAnnue\']?>
<td> </td>
</tr>
<tr class="piccolo medio">
<td class="capolinea">B8.</td>
<td class="grassetto">Inquinante; emissioni; unità di misura</td>
<?=$results[\'Inqinanti\']?>
<td class="corsivo"><b>ogni impianto soggetto ad autorizzazione alle
emissioni</b> deve fare o un autonomo controllo 1 volta l\'anno (si
tratta di certificati analitici: si prega di inviare tali relazioni
in allegato alla presente tabella) o misure in continuo (in questo
caso indicare l\'inquinante, le emissioni corrispondenti e l\'unità di
misura).</td>
</tr>
<tr class="piccolo medio">
<td class="capolinea">B9.</td>
<td class="grassetto">Sistema di abbattimento degli inquinanti</td>
<?=$results[\'Abbattimento\']?>
<td class="corsivo">Indicare i sistemi di abbattimento degli
inquinanti installati, eventualmente unendo più celle se più
generatori fanno riferimento ad un unico camino e ad un\'unica linea
fumi</td>
</tr>
</table>
<?=$results[\'bottoni\']?>
</form>
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
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 PHP, please visit: http://php.net/manual/en/ref.pcre.php