[PHP] probleme str_replace

lagger -  
 lagger -
Bonjour a tous ;

J'ai des fichiers qui contiennent des chaines de type
" $screen[quelquechose] " que je voudrait remplacer par
" $screen['quelquechose'] "

Je voudrait donc entourer ce qui est entre crochets (une chaine dynamique alphabétique)par des cotes ' '.

J'ai échoué a rédiger une fonction 'str_replace' ou 'preg_replace' qui me fasse ce travail, alors un peu d'aide me serait vraiment utile
Merci d'avance.
Configuration: Windows XP
Firefox 3.0.7

3 réponses

  1. djflexlive Messages postés 577 Statut Membre 95
     
    J'ai des fichiers qui contiennent des chaines de type 


    Quels types de fichiers ?

    Ensuite je penses qu'il vaut mieux récupérer en 1er lieu le "quelquechose" et ensuite lui donner l'attribut que tu souhaites : string dans ton cas.
    0
  2. lagger
     
    Déjà merci pour la réponse,
    Pour les fichiers c'est pas le problème, c'est un traitement sur les chaine de caractères
    en fait je cherche un truc dans le genre

    <?php
    $texte="des trucs screen[abcd] des trucs";
    echo preg_replace("#^screen\[(\.)\]#", "screen['$1']", $texte);
    ?>

    Je veut que ce code m'affiche "des trucs screen['abcd']des trucs"
    une autre solution SVP ?
    0
  3. lagger
     
    Solution :

    preg_replace('`\$screen\[([^]]+)]`', "\$screen['$1']", $texte)
    0