[PHP] Exp rég pour remplacer du texte
Cobr@
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Darshu Messages postés 303 Date d'inscription Statut Membre Dernière intervention -
Darshu Messages postés 303 Date d'inscription Statut Membre Dernière intervention -
Salut,
je cherche comment remplacer une partie de code html situé entre deux tags par une autre.
Exemple : entre les balises <div> et </div>, tout remplacer par Mon texte
donnerait
Merci d'avance ;)
je cherche comment remplacer une partie de code html situé entre deux tags par une autre.
Exemple : entre les balises <div> et </div>, tout remplacer par Mon texte
<div> blabla blabla </div>
donnerait
<div> Mon texte </div>
Merci d'avance ;)
A voir également:
- [PHP] Exp rég pour remplacer du texte
- Texte de chanson gratuit pdf - Télécharger - Vie quotidienne
- Remplacer disque dur par ssd - Guide
- Quel site pour remplacer coco - Accueil - Réseaux sociaux
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Remplacer word - Guide
3 réponses
Salut.
Pour ce faire, tu as la fonction preg_match_all() de PHP qui permet de chercher des expressions régulières, mais il faut que ce soit dans une variable.
Dans ton cas, ça donnerait :
Il te ne reste plus (sur la bonne partie bien entendu, de faire str_replace("chaêne à remplacer","chaîne de remplacement","chaîne dans laquelle faire le remplacement"); A noter que dans le preg_match_all j'ai utilisé $variable, qui doit être ton texte qui contient les <div> et dans lequel tu veux remplacer le texte intermédiaire.
Bon courage.
Pour ce faire, tu as la fonction preg_match_all() de PHP qui permet de chercher des expressions régulières, mais il faut que ce soit dans une variable.
Dans ton cas, ça donnerait :
preg_match_all("/<div>(.*)</div>/",$variable,$matches, PREG_SET_ORDER); foreach ($matches as $message) { echo "Partie 0 : ",$message[0],"<BR>"; echo "Partie 1 : ",$message[1],"<BR>"; echo "Partie 2 : ",$message[2],"<BR>"; }
Il te ne reste plus (sur la bonne partie bien entendu, de faire str_replace("chaêne à remplacer","chaîne de remplacement","chaîne dans laquelle faire le remplacement"); A noter que dans le preg_match_all j'ai utilisé $variable, qui doit être ton texte qui contient les <div> et dans lequel tu veux remplacer le texte intermédiaire.
Bon courage.
Merci pour ta réponse.
Mais le problème ici, c'est qu'apparement, on ne peut changer que du texte connu à l'avance et c'est pas vraiement ça que je veux.
J'vais essayer de trouver sur google.
A+
Mais le problème ici, c'est qu'apparement, on ne peut changer que du texte connu à l'avance et c'est pas vraiement ça que je veux.
J'vais essayer de trouver sur google.
A+
Dans quel sens du texte connu àç l'avance ? Ce que je t'ai filé va t'afficher TOUS les textes compris entre <div> et </div>, mais c'est sur qu'il faut savoir où se trouve les <div> à remplacer ....
Sinon une autre méthode, c'est d'ouvrir ta page comme un fichier (avec fopen), et, pour chaque ligne lue, de faire le preg_match_all ... Mais c'est lourd !
Sinon une autre méthode, c'est d'ouvrir ta page comme un fichier (avec fopen), et, pour chaque ligne lue, de faire le preg_match_all ... Mais c'est lourd !