ホームページ  >  記事  >  バックエンド開発  >  正規表現を使用して PHP で幅と高さのスタイルを削除する方法について

正規表現を使用して PHP で幅と高さのスタイルを削除する方法について

jacklove
jackloveオリジナル
2018-06-08 17:12:372094ブラウズ

作業上の必要により、HTML を収集し、HTML コンテンツをデータベースに保存する必要があります。使用への影響を避けるために、幅と高さのスタイルを削除する必要があります。たとえば、写真や p の幅、高さなど。

ただし、収集した HTML では、大文字と小文字、中間のスペースなど、スタイルが異なって記述されています。

そこで、これらの奇妙なスタイルをフィルタリングするために、PHP 通常を使用して次のメソッドを作成しました。

コードは次のとおりです:

<?php/**
 * 清除宽高样式
 * @param  String $content 内容
 * @return String
 */function clear_wh($content){
    $config = array(&#39;width&#39;, &#39;height&#39;);    foreach($config as $v){        $content = preg_replace(&#39;/&#39;.$v.&#39;\s*=\s*\d+\s*/i&#39;, &#39;&#39;, $content);        $content = preg_replace(&#39;/&#39;.$v.&#39;\s*=\s*.+?["\&#39;]/i&#39;, &#39;&#39;, $content);        $content = preg_replace(&#39;/&#39;.$v.&#39;\s*:\s*\d+\s*px\s*;?/i&#39;, &#39;&#39;, $content);
    }    return $content;
}?>

デモ:

<?php$html = <<<HTML
<p style="text-align:center" width="500" height="300">
    <p style="Width : 100px ; Height: 100 px;">
        <img src="/images/test.jpg" width=400 height = 200>
        <p style="float:left; width: 100px; height : 200 px;"></p>
    </p>
    <p style="width :   100 px ;height: 100px">
        <img src="/images/test.jpg" width=400 height = 200>
    </p>
</p>
HTML;echo &#39;<xmp>&#39;;echo &#39;原内容:&#39;.PHP_EOL;echo $html.PHP_EOL.PHP_EOL;echo &#39;过滤后内容:&#39;.PHP_EOL;echo clear_wh($html);echo &#39;</xmp>&#39;;
?>

出力:

原内容:<p style="text-align:center" width="500" height="300">
    <p style="Width : 100px ; Height: 100 px;">
        <img src="/images/test.jpg" width=400 height = 200>
        <p style="float:left; width: 100px; height : 200 px;"></p>
    </p>
    <p style="width :   100 px ;height: 100px">
        <img src="/images/test.jpg" width=400 height = 200>
    </p></p>过滤后内容:<p style="text-align:center"  >
    <p style=" ">
        <img src="/images/test.jpg" >
        <p style="float:left;  "></p>
    </p>
    <p style="">
        <img src="/images/test.jpg" >
    </p></p>

この記事では、PHP で通常のルールを使用して幅と高さのスタイルを削除する方法について説明します。 PHPの中国語サイトです。

関連する推奨事項:

ファイル コンテンツの重複排除と並べ替えの詳細な説明

mysql の大文字と小文字を区別する設定の問題の解釈

#PHP を使用して配列をマージし、キー値を保持する方法##

以上が正規表現を使用して PHP で幅と高さのスタイルを削除する方法についての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。