J'ai une carte d'identité divi à supprimer d'une sortie qui ressemble à Comment puis-je supprimer cette div et tout ce qui lui est à l'aide de PHP et de regex? P> P> P> Merci. P> p>
3 Réponses :
La réponse simple est que vous ne le faites pas. Vous utilisez plutôt l'un des nombreux analyseurs HTML de PHP. Les regexes sont un moyen floconneux de manipulation de HTML.
qui étant dit que vous pouvez faire cela: p> mais beaucoup strong> choses peuvent mal avec ça. Par exemple, si cela contient un div: p> vous allez vous retrouver avec: p> comme la réégalité Arrêtez-vous au premier fait avec un analyseur, il ressemble plus à ceci: p> div> code>. Et non, vous ne pouvez rien faire pour résoudre ce problème (avec des expressions régulières) de manière cohérente. P>
+1. Ça vaut la peine de commenter que (a) si l'élément n'existe pas, alors $ élément code> est null code> et la commande -> removechecild () code> Fail avec une erreur fatale, et (b) Vous pouvez utiliser / peut-être utiliser le @ code> pour provoquer le -> loaderhtml () code> pour faire taire les notifications de tous les avis sur HTML malformé: < code> @ $ doc-> loadhtml ($ html); code>
Je ne sais pas sur PHP, mais vous pouvez remplacer /
PHP est le côté du serveur et la sortie provient du serveur. Vous ne pouvez pas simplement le sortir? Ou essayez-vous de le cacher? Si c'est le cas, dans une feuille de style, dites simplement Si la chaîne est un retour de certaines fonctions dans PHP que vous n'avez pas écrit et que vous ne voulez pas muck avec ce code, vous devez écrire une regex très difficile pour tenir compte de la syntaxe de Div Netd Div. Sortie, etc. Je recommanderais d'utiliser un analyseur (peut-être ceci ZEND Framework composant ) pour vous aider à sortir. Je l'ai utilisé plusieurs fois pour quelque chose de similaire. Bien que si vous ne connaissez pas du tout avec ZF, vous voudrez peut-être essayer autre chose. P> #ithis {affichage: aucun} code>. p>
Pouvez-vous plus élaborer? Est-ce sous la forme d'une chaîne?
Connaissez-vous le nom d'identification et / ou le nom de la classe? Ou y a-t-il des identifiants distincts de l'ID et / ou de la classe afin de ne pas supprimer toutes les divs de tomber dans cette description? Ou voulez-vous supprimer toutes les divs et leur contenu?