Heim  >  Fragen und Antworten  >  Hauptteil

Regulärer Ausdruck – Der reguläre PHP-Ausdruck bestimmt, ob in den Tags a und img bestimmte Schlüsselwörter vorhanden sind

Was ich implementieren möchte, ist die Schlüsselwort-Ersetzungsfunktion a.
Wenn [Beispiel] ein Schlüsselwort ist, erscheint das Schlüsselwort in diesen drei Situationen und kann nicht ersetzt werden, da sonst die HTML-Struktur zerstört wird

<a href="#" title="这是一个例子而已">这是一个例子而已</a>
<img src="#" alt="我是例子呀">

<a href="#" title="这是一个例子">这是一个例子</a>
<img src="#" alt="我是例子">

<a href="#" title="例子而已">例子而已</a>
<img src="#" alt="例子呀">

被破坏的<img src="#" alt="破坏了<a href="#">例子</a>破坏的可能性有多大?"/>

<?php
    function findword($word,$html){
        $str_reg = '(<a[^>]+>)(.*)('.$word.')(.*)(<\/a[^>]*>)';
        $str_reg .= '|(<img)(.*?)('.$word.')(.*?)(>)' ;
        if(preg_match("/$str_reg/",$html)){
            return true;
        }else{
            return false;
        }
    }
?>

Eine beschissene Funktion geschrieben. Es scheint nicht richtig zu sein.

欧阳克欧阳克2698 Tage vor1228

Antworte allen(1)Ich werde antworten

  • ringa_lee

    ringa_lee2017-06-21 10:12:32

    你先把破坏规则的做一下置换,比如htmlspecialchars处理,替换完再置换回去就好了啊

    Antwort
    0
  • StornierenAntwort