2011-11-07 5 views
1

제목에서 볼 수, 여기에 HTML 코드 예제 :으로, preg_match_all 잡아가

<p>I <strong>Want</strong> this</p> 
<p>And this one too</p> 
:

이 질문은
<body> 
<!--CODE_START--> 
<p>I <strong>Want</strong> this</p> 
<p>And this one too</p> 
<!--CODE_STOP--> 

<p>This sould be go to trash</p> 

<!--CODE_START--> 
<p>This one should be included too</p> 
<!--CODE_STOP--> 

, 나는 모든 <!--CODE_START--><!--CODE_STOP--> 내부 그래서 결과가해야 할

<p>This one should be included too</p>

/<!--CODE_START-->([^<]*)<!--CODE_STOP-->//<!--CODE_START-->(.*)<!--CODE_STOP-->/을 사용하여 시도해 보았습니다. n 수식어가 su, imu, im과 같이 작동하지 않으면 빈 배열을 반환합니다. 또한 전체 HTML 페이지를 잡으려고했습니다.

미리 감사드립니다.

답변

4

[^<]은 분명히이>< 페이지에 실패 할거야하는 < 아닌 모든 것을 의미한다. 그냥 모든 것을 잡아 비 욕심 옵션을 사용

preg_match_all('/<!--CODE_START-->(.*)<!--CODE_STOP-->/sU', $foo); 
+0

미안, 난이를 넣어 깜빡, 내가 전에이 시도 된 적이 있지만, 하늘의 배열의 결과를 단지 동일합니다. – pengemizt

+0

Ups, 나는 오타를 만든다! 그것은 잘 작동합니다! 감사! – pengemizt