Regex 또는 다른 PHP 함수를 사용하여 모든 html 텍스트를 PHP 배열로 추출하는 방법이 있습니까?
예 1 :PHP 배열에 HTML 텍스트 내용 추출
예를 들어, I 코드의 조각이
<div class="user" ><?= $username ?></div>
<table>
<tr>
<td>Cell 1</td>
<td>Cell 2</td>
</tr>
</table>
<span>Lorem ipsum <b>dolor</b> sit amet</span>
Lorem ipsum dolor sit amet <a href="www.example.com">Lorem</a>
Dolor site amet at date <?php echo date('Y-m-d'); ?> example
및 I 폼에 삽입 할 수있는 방법이 필요하다는 것이다 출력이 같은 배열 :
Array(
[0] => "Cell 1"
[1] => "Cell 2"
[2] => "Lorem ipsum <b>dolor</b> sit amet"
[3] => "Lorem ipsum dolor sit amet "
[4] => "Lorem"
[5] => "Dolor site amet at date "
[6] => " example"
)
하지만 텍스트 장식 태그의 예외는 <u> <b> <i>
과 같습니다.
위에서 언급 한 예외와 함께 strip_tags
을 사용해 보았지만 일관성이없고 종종 나머지를 무시하는 첫 번째 문자열 만 반환합니다.
UPDATE
이 정규식 (?<=>)\s*(?=<)|(?<=>)\n*([^<]+)
거의이다 내가 요청 무엇, 그것은 탈출시키는 것을 몇 발생이 있습니다.
<script type="text/javascript">
tipoProd = 'Squares';
</script>
반환 : 그것이 반환 script
태그를 발견하면
원하든 그들 사이에
<div class="content section" style="padding: 40px 0px; display: <?= $dev?'none':'block'?>; text-align:center" id="selectOptions">
Retunrs 모든 후 :
tipoProd = 'Squares';
을 그리고 아래의 라인을 발견하면 PHP 닫기 태그 :
; text-align:center" id="selectOptions">
어떻게 이것을 정규식에 추가 할 수 있습니까?
사용'DomDocument' 또는'간단한 PHP DOM Parser'. – Barmar
@Barmar : 단순 HTML DOM을 의미합니까? 내가 괴물 같은 이유로 DOM 확장을 사용할 수 없다면 추천하지 않을 것이다. 'DomDocument'와 아마'DomXPath'가 더할 나위없이 좋은 방법입니다. – cHao