>  기사  >  백엔드 개발  >  PHP는 정규식을 사용하여 너비 및 높이 스타일을 제거합니다.

PHP는 정규식을 사용하여 너비 및 높이 스타일을 제거합니다.

jacklove
jacklove원래의
2018-06-15 17:49:281686검색

업무상 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;
}?>

Demo:

<?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 테이블 데이터 행 및 열 변환 방법

nginx 방법으로 구성 파일을 빠르게 보기

php 여러 개의 1차원 배열을 2차원 배열로 결합하는 방법

위 내용은 PHP는 정규식을 사용하여 너비 및 높이 스타일을 제거합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.