|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juillet 2005 Messages : 26 ![]() |
pour une chaine = "<html>aaa</html>bbb"
si on veu extraire les tags html voici l'expression réguliaire qui va recuperer tout les tags : (<.*?>) , ce qui donne : <html></html> moi j'aimerai bien avoir le contraire , je veu pas extraire les tags mais extraire ce qui est entre les tags dans mon exemple le resultat doit etre : aaa bbb |
|
|
00
|
|
|
#2 |
![]() ![]() |
Si tu peux modifier ta chaine ,tu en extrais les tags , tu suprime les tag extrais de ta chaine et tu as ton résultat
__________________
"Never use brute force in fighting an exponential." (Andrei Alexandrescu) Mes articles dont Conseils divers sur le C++ Une très bonne doc sur la STL (en) Why linux is better (fr) |
|
|
00
|
|
|
#3 |
![]() ![]() |
Ce n'est pas un problème HTML, merci donc de te diriger vers le langage que tu utilisent pour les expressions régulières.
__________________
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_- Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester. Pensez également à cocher ![]() Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça. Dimension Internet - Carnet Web Imprimerie Nice |
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : juillet 2005 Messages : 26 ![]() |
le sujet à été deplacé ici par un admin
en tout cas peu importe le langage utilisé , une fois j'ai la bonne expression je peu l'utilise avec n'importe kel langage , pour la premiere reponse , oui je peu extraire les tags et par la suite parcourir la chaine pour les enlever , mais moi j'ai besoin de connaitre l'expression inverse , (c'est purement educatif) |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Tu ne pourras pas le faire avec un expression rationnelle simple ; il faudrait que tu construises un automate puis que tu passes à l'expression rationnelle associée, étant donné que tu dois effectuer des différences.
|
|
|
00
|
|
|
#6 |
![]() ![]() |
Bien sûr que c'est faisable et le sujet n'a rien à faire dans la section HTML, je le répète !
Maintenant c'est tout à fait faisable avec des expressions régulières, il suffit de rechercher le pattern correspondant et de prendre ce qui se trouve à l'intérieur... http://php.developpez.com/cours/#langage-regexes
__________________
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_- Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester. Pensez également à cocher ![]() Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça. Dimension Internet - Carnet Web Imprimerie Nice |
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : juillet 2006 Messages : 1 534 ![]() |
Perso je ferais un truc du genre:
en récupérant l'occurence entre parenthèses par le $1. Mais je suis loin d'être spécialiste en regexp... Comme l'a relevé Blueice, ton poste redirigé sur ce forum est une erreur. Tu devrais être redirigé sur un forum de programmation surlequel les regexp sont utilisées. Tu auras plus de réponses là-bas. Tu souhaites traiter côté php, javascript,...? On peut redéplacer ton message sur le forum correspondant.. |
|
|
00
|
|
|
#8 | |
|
Invité régulier
![]() Inscription : juillet 2005 Messages : 26 ![]() |
Citation:
je suis daccord de deplacer le sujet dans la rubrique php |
|
|
|
00
|
|
|
#9 | |||
![]() ![]() Inscription : juillet 2006 Messages : 1 534 ![]() |
Citation:
Perso je suis partie du principe qu'on prenait tout texte qui se trouve entre les signes > et < il est vrai que, pour que ton exemple passe, j'aurais du mettre le < final en option en ajoutant le ?: Je te mets un petit test en javascript (c'est ma seule expérience des regexp): Code javascript :
Le problème c'est que je ne sais pas comment récupérer avec le match un tableau directement avec les $1 et pas avec le < > inclus (j'ai juste mis le dernier en alerte que tu voies que le $1 renvoie bien la chaîne voulue). Bref comme je l'ai dit j'ai des compétances bien limitées et partielles en la matière Je déplace donc sur les forums php |
|||
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() Étudiant Inscription : août 2005 Messages : 632 ![]() |
et pourquoi tu ne fais pas un strip_tags ??
Ou a la limite (pour conserver les espaces) faire un Code :
preg_replace('#<[^>]+>#', ' ', $texte); |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com