Nettoyage des données lors du parsing via des expressions régulières en PHP
Il est généralement nécessaire de nettoyer les données obtenues. Supposons, par exemple, que nous ayons le texte suivant :
<p>
text1
</p>
<p>
text2
text2
text2
</p>
<p>
<span>text3</span> text3 text3
</p>
Supposons que dans la variable $res
nous ayons obtenu
un tableau de textes de paragraphes. Les textes des paragraphes
contiendront beaucoup de bruit. Nettoyons-les :
<?php
$clearRes = [];
foreach ($res as $elem) {
$elem = trim($elem); // supprimer les espaces en fin de chaîne
$elem = strip_tags($elem); // supprimer les balises internes
$elem = preg_replace("#\t+#", ' ', $elem); // remplacer les tabulations par des espaces
$clearRes[] = $elem;
}
var_dump($clearRes);
?>
Obtenez un tableau des textes de tous les h2
et un tableau des textes de tous les paragraphes :
<h2>111</h2>
<p>
text1<br>
text1<br>
text1<br>
</p>
<h2><span>222</span></h2>
<p>
text2
text2
text2
<hr>
</p>
<h2 class="last">333</h2>
<p>
text3
text3
</p>