2011-04-29 5 views
0

DIV의 콘텐츠를 찾고 싶습니다. DIV의 ID를 지정하기 만하면됩니다. 나머지는 preg_match에서 자동으로 조정됩니다. 예컨대 :PHP 정규식을 사용하여 콘텐츠를 찾는 방법

<div id="midbuttonarea" etc...>some text...</div> 
+0

phps DOM-classes을 사용할 수 없게합니까? 일이 훨씬 쉬워 질 것입니다. – Yoshi

답변

1

당신은 훨씬 더 대신 정규식의 HTML을 구문 분석하는 HTML 파서를 사용하여 좋은 결과를 얻을 가능성이있어. Regex로 HTML을 파싱하는 것은 극히 어렵습니다. 그 결과는 그리 신뢰할 수 없습니다.

이 질문에 대한 대답을 확인하십시오 : How do you parse and process HTML/XML in PHP? 어떻게하는지 알려주십시오.

+0

PHP 정규식으로 가능할 수 있습니다. – rajan

1

브렌 튼이 맞습니다. 어쨌든, 여기에 당신은 :

<?php 
    function findDivInnerHtml($html, $id){ 
     preg_match("/<div .* id=\"{$id}\" .*>(.*)<\\/div>/i", $html, $matches); 
     return $matches[1]; 
    } 
?> 

샘플 사용 :이 도움이

<?php 
    $html = '<div id="other"> xxx </div> <div id="midbuttonarea" etc...>some text...</div> '; 
    $innerHTML = findDivInnerHtml($html, 'midbuttonarea');  
    echo $innerHTML; //outputs "some text..." 
?> 

희망을.

+0

'$ html'은 줄 바꿈이 필요 없다는 것을 잊어 버렸습니다. 'str_replace'로 쉽게 제거 할 수 있습니다. –

+0

덕분에 도움을 주셔서 감사합니다 ... 덕분에 많이 – rajan

+0

굉장! 내 대답을 최고의 해결책으로 표시해주세요. –

관련 문제