Versio

regex een html element

Overzicht Reageren

M Ypma

M Ypma

02/03/2008 16:48:00
Quote Anchor link
Ik probeer een regular expression los te laten op een string, die een html element zoekt en zijn inhoud terug geeft.

Dus de regex op <p attribute="value">test</p> zal test terug moeten geven.

Nu heb ik het volgende maar geeft een lege array terug:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php $elm = 'p';
preg_match_all( '!<'.$elm.' [^>]*>.*?</'.$elm.'>!si', $this->output, $matches );
print_r( $matches ); ?>


Hoe vang ik nu de inhoud af?
 
PHP hulp

PHP hulp

25/05/2012 14:20:22
Gesponsorde koppelingen:
 
Mark PHP

Mark PHP

02/03/2008 17:05:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$element
= 'p';
$element = preg_quote($element);
preg_match_all('#\<' . $element . '.*\>(.*)\<\/' . $element . '\>#ismU', $this->output, $matches, PREG_SET_ORDER);
echo '<pre>';print_r($matches);echo '</pre>';
?>

Inhoud van het element staan nu op index 1 van elke row in $matches. Denk eraan dat als je om een of andere reden geneste elementen hebt, je recursie moet gaan gebruiken.
Gewijzigd op 01/01/1970 01:00:00 door Mark PHP
 
M Ypma

M Ypma

02/03/2008 17:14:00
Quote Anchor link
@Agirre
Hartelijk dank! Werkt perfect.
 



Overzicht Reageren