Remplacer un texte selon l'ordre dans lequel il a été trouvé

Résolu
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 - 3 mars 2009 à 02:27
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 - 3 mars 2009 à 17:54
Bonjour !

J'ai un problème. Je voudrais remplacer du texte dans un textarea par un autre à l'aide d'une fonction. Jusque là, pas de problème, il en existe plusieurs sur le site.

C'est là que ça se corce. Je voudrais que dès qu'il remplace ALLO par HÉ ou SALUT (c'est un exemple :P) mais que, le premier qu'il trouve il le remplace par HÉ, le deuxième par SALUT, le troisième par HÉ et ainsi de suite.

Merci de m'aider, j'espère que j'ai été assez clair ;)

------JDMCreator

2 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
3 mars 2009 à 09:56
bonjour,
dans un replace on peut utiliser une fonction !
on y fait donc ce qu'on veut

ch'tiot exemple :

    <textarea id="txt">Allo par exemple allo, allo et encore ALLO</textarea>

    <script>

        var nb=0;

        var remp=["hé","salut"];

        document.getElementById("txt").value=

            document.getElementById("txt").value.replace

            (    /allo/gi, function($0)

                  { nb++;

                    return (remp[nb%remp.length]);

                        }

            );

    </script>

tu devrais pouvoir adapter

Cordialement

[mon Site][M'écrire]Bul
3
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
3 mars 2009 à 17:54
Bonjour,


Merci ce code fonctionne parfaitement ! :D


C'est pour faire un convertisseur Wikicode/HTML ;)


Encore merci

------JDMCreator
0
Rejoignez-nous