Correspond à tout le entre html <body> étiquettes à l'aide de PHP
J'ai un script qui retourne dans une variable appelée $contenu
<body>
<p><span class=\"c-sc\">dgdfgdf</span></p>
</body>
J'ai cependant besoin de placer tout ce qui est entre le corps de la balise à l'intérieur d'un tableau appelé correspond à
Je ne les suivants: pour correspondre à la choses entre la balise body
preg_match('/<body>(.*)<\/body>/',$content,$matches);
mais le $mathces tableau est vide, comment pourrais-je le faire revenir tout à l'intérieur de la balise body
cochez cette remarque sur l'utilisation de regex pour l'analyse html: stackoverflow.com/questions/1732348/...
OriginalL'auteur Roland | 2010-02-02
Vous devez vous connecter pour publier un commentaire.
Vous ne devriez pas utiliser des expressions régulières pour analyser HTML.
Votre problème particulier dans ce cas, vous devez ajouter les DOTALL modificateur de sorte que le point correspond retours à la ligne.
Mais sérieusement, l'utilisation d'un analyseur HTML à la place. Il ya tellement de façons que l'expression régulière ci-dessus peuvent se briser.
OriginalL'auteur Mark Byers
N'essayez pas de processus de html avec des expressions régulières! Utilisation PHP builtin analyseur à la place:
OriginalL'auteur soulmerge
Si pour quelque raison vous n'avez pas DOMDocument installé, essayez ce
L'étape 1. Télécharger simple_html_dom
L'étape 2. Lire la documentation sur la façon de utiliser ses sélecteurs
Pour info: à l'époque, il avait une fuite de mémoire et de tuer la totalité de la demande lorsque vous traitez avec de grandes pages. J'espère que c'est fixé maintenant.
Si tout va bien...oui.. 🙂
OriginalL'auteur Justin Johnson