我有一些带有一些格式错误的html的数据库条目。我想通过以下方式清理它:
<br>
和<br />
)</p>
之后,即使它位于下一行。我对正则表达式相当不错,但是在常规替换时非常糟糕,所以我需要一些关于如何以良好方式执行此操作的输入。
请参阅下面的示例字符串:
<br>
<br>
<br>
<br>
<p>Highburys torsdagsquiz handler om
å kunne litt om det meste, og litt flaks.</p>
<br>
<p>Juks og bruk av hjelpemidler er strengt forbudt , og
medfører diskvalifikasjon og vanære.</p>
<br>
<p>Hvert lag kan stille med inntil 5 deltagere, alle kan delta og
kommer du alene er det alltid et lag som kan ha bruk for deg. Det
er ingen forhåndspåmelding.</p>
<br>
<p>Det stilles 50 spørsmål fordelt på 2 omganger
om alt mellom himmel og jord. Vinnerlaget får en flott
premie!</p>
<br>
<p>Moroa starter kl. 19.00. Det kan bli trangt om plassene,
så det er en god ide og være tidlig ute.</p>
<br>
<p>Lykke til, vi sees!</p>
<br/>
<br>
<br>
<br>
<br>
<br>
<br>
想要的输出应该是这样的:
<p>Highburys torsdagsquiz handler om
å kunne litt om det meste, og litt flaks.</p>
<p>Juks og bruk av hjelpemidler er strengt forbudt , og
medfører diskvalifikasjon og vanære.</p>
<p>Hvert lag kan stille med inntil 5 deltagere, alle kan delta og
kommer du alene er det alltid et lag som kan ha bruk for deg. Det
er ingen forhåndspåmelding.</p>
<p>Det stilles 50 spørsmål fordelt på 2 omganger
om alt mellom himmel og jord. Vinnerlaget får en flott
premie!</p>
<p>Moroa starter kl. 19.00. Det kan bli trangt om plassene,
så det er en god ide og være tidlig ute.</p>
<p>Lykke til, vi sees!</p>
答案 0 :(得分:0)
它可能会有所帮助:
function cleanText($string) {
$str = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $string); // OR $str = trim(preg_replace('/\s\s+/', ' ', $string));
$str = strip_tags($str, '<p>');
return $str;
}
echo cleanText($string);