PHP regex ile bir görüntü içeren değil Eşleştirme nth html paragraf

0 Cevap php

Ben bir görüntü içermiyor inci html paragraftan sonra içeriği eklemek için kullanmaya çalışıyorum çalışıyorum. Şimdiye kadar düzgün görüntüler içeren paragrafları dışlamak mümkün olmamıştır.

Ne eksik veya bu regex etkin kullanımı dışında yaşıyorum?

Şimdiye kadar benim kod:

$content = '
<p><a href="#"> <img align="right" src="blah.jpg"> </a> Some paragraph text</p>

<param name="blah" value="blah"> <!-- to make sure we are only counting <p>s -->
<param name="blah" value="blah">
<param name="blah" value="blah">

<p>First paragraph to count.</p>
<p>Second paragraph to count.</p>

<p>Blah blah <a href="#">link</a><img src="blah.jpg" /> blah </p>

<p>Third paragraph to count.</p>
<p>Fourth paragraph to count.</p>
';

$insert = "\n\n".'<h3>INSERT ME</h3>'."\n\n";

$pattern = '/((?:.*?<p[\W.]*?>(?!<img)){3})(.*$)/is';

preg_match($pattern, $content, $matches);

if (!empty($matches)) {
    echo "Yes!\n";
    echo $matches[1].$insert.$matches[2];
}else{
    echo "No.\n";
    echo $content;
    echo $insert;
}

Teşekkürler!

0 Cevap