Php récupérer un morceau d'une chaine
Résolu
Nath
-
Nath -
Nath -
Bonjour,
voila j'ai une chaine "XXXXX[AAA] XXXX"
je voudrais récupérer juste le AAA mais je ne sais pas comment m'y prendre.
Avez-vous une solution?
Merci beaucoup
voila j'ai une chaine "XXXXX[AAA] XXXX"
je voudrais récupérer juste le AAA mais je ne sais pas comment m'y prendre.
Avez-vous une solution?
Merci beaucoup
A voir également:
- Php récupérer un morceau d'une chaine
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Chaine tnt gratuite sur mobile - Guide
- Récupérer mon compte facebook désactivé - Guide
6 réponses
$r est le résultat et $k ta chaine d'entrée
Abandonne ce qui te trouble au profit de ce qui apaise ton coeur.
if (preg_match('#^[^\[]+\[([^\]]+)#',$k,$r)) echo $r[1]; // affiche ce qui est entre les [ ]
$r=preg_replace('#\[[^\]]+\]#','',$k); echo $r; // effectue le remplacement et affiche le résultat
Abandonne ce qui te trouble au profit de ce qui apaise ton coeur.
ca ne fontionne pas chez moi.
voila le code que j'ai fais hier mais je suis sûre qu'il y'a moyen de le simplifier.
car je n'ai pas réussi a récupéré ce qu'il y'a entre les crochet.
A savoir que ma chaîne provient déjà d'une autre chaîne divisé.
Voila en gros, je récupère entre crochet le nom du pays pour y mettre à la place une image drapeau. Sur chaque ligne il n'y a forcement qu'un seul pays. Mais la facon dont j'ai codé pour chaque drapeau existant il y'aura une ligne, et d'autres drapeau s'ajouteront avec le temps mais il peu y'en avoir pas mal. Je suis sûre qu'il y'a plus simple mais je maîtrise pas encore correctement php, si quelqu'un peut m'apporter un morceau de solution ;)
//---------------------------------------------------- idée
sinon j'ai pensé faire un fonction avec tableau de ce genre
Mais pour cette solution il faut que je recupere le nom entre crochet et finalement elle est peut etre encore plus compliquer que la premiere...
SVP aidez moi :)
Merci
Nath
voila le code que j'ai fais hier mais je suis sûre qu'il y'a moyen de le simplifier.
car je n'ai pas réussi a récupéré ce qu'il y'a entre les crochet.
A savoir que ma chaîne provient déjà d'une autre chaîne divisé.
$chaine=explode('/',$donnees['clubs']); foreach($chaine as $cle => $element) { $cr = str_replace("[BEL]", '<img src="images/pays/bel.jpg" title="Belgique"> ',$chaine[$cle]); $cr = str_replace("[FR]", '<img src="images/pays/fr.jpg" title="France"> ',$cr); //1lignes par pays $cr = str_replace("[SEN]", '<img src="images/pays/sen.jpg" title="Sénégal"> ',$cr); $cr = str_replace("[EAU]", '<img src="images/pays/eau.jpg" title="Émirats arabes unis"> ',$cr); . . . echo " - ".$cr."<br>";
Voila en gros, je récupère entre crochet le nom du pays pour y mettre à la place une image drapeau. Sur chaque ligne il n'y a forcement qu'un seul pays. Mais la facon dont j'ai codé pour chaque drapeau existant il y'aura une ligne, et d'autres drapeau s'ajouteront avec le temps mais il peu y'en avoir pas mal. Je suis sûre qu'il y'a plus simple mais je maîtrise pas encore correctement php, si quelqu'un peut m'apporter un morceau de solution ;)
//---------------------------------------------------- idée
sinon j'ai pensé faire un fonction avec tableau de ce genre
function Drapeau($nation) { $pays[0][0] = "BEL"; $pays[0][1] = '<img src="images/pays/bel.jpg" title="Belgique">'; $pays[1][0] = "FR"; $pays[1][1] = '<img src="images/pays/fr.jpg" title="France">'; //etc..................................... pour chaque pays $i = 0; while($i <x) : //x = nb de pays if ($pays[$i][0] == $nation) { return $pays[$i][1]; $i=200; //plus que x } else {$i++;} endwhile; }?>
Mais pour cette solution il faut que je recupere le nom entre crochet et finalement elle est peut etre encore plus compliquer que la premiere...
SVP aidez moi :)
Merci
Nath
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ma solution a été testée avant de te l'envoyer... chez moi elle fonctionne, tu peux me dire de quelle nature sont les caracteres avant les corchets , tes fameux XXX
XXX c'est BEL, FR les premiere lettre du pays en fait
[BEL] se trouve en debut de chaine.
voila ce que je reccuper de ma BDD
[FR]villes (dates)/[BEL]ville (date)/etc...
je sépare dans un premier temps la chaines en plusieurs jusque la pas de problème.
chaque morceau de chaîne correspond à "[PAYS]villes (dates)"
[BEL] se trouve en debut de chaine.
voila ce que je reccuper de ma BDD
[FR]villes (dates)/[BEL]ville (date)/etc...
je sépare dans un premier temps la chaines en plusieurs jusque la pas de problème.
chaque morceau de chaîne correspond à "[PAYS]villes (dates)"