Remplacer la dernière occurrence d'une chaine dans une chaine

VaN
Mammouth du PHP | 1107 Messages

12 janv. 2009, 03:28

Bonsoir,

je cherche à remplacer la dernière occurrence d'une chaine dans une autre chaine.

J'ai d'abord testé avec replace(), mais cela remplace toutes les occurrences présentes.
Existe t'il une fonction javascript native qui fasse cela ?

Si non, comment dois-je m'y prendre ?

Merci d'avance

Eléphant du PHP | 447 Messages

12 janv. 2009, 06:37

Je suis pas sûr du tout, mais peut-être en mettant le résultat de ta recherche de chaînes dans un tableau et en visant la dernière clé (ça doit un truc du style [-1]), à vérifier...
Probably (only a) Human Problem?

VaN
Mammouth du PHP | 1107 Messages

12 janv. 2009, 13:00

Et une fois que j'ai ma dernière occurrence en fin de tableau, comment je fais pour dire où elle se trouve dans la chaine originelle ?

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Eléphant du PHP | 170 Messages

12 janv. 2009, 13:31

Salut,

Code : Tout sélectionner

<script type="text/javascript"> <!-- var avant = "OO"; var apres = "XX"; var chaine = "-----OO----OO------OO--"; var chaine = chaine.substring(0,chaine.lastIndexOf(avant)) + apres + chaine.substr(avant.length + chaine.lastIndexOf(avant)); document.write(chaine); //--> </script>
:oops: quelque chose me dit qu'il y a beaucoup plus simple ...

VaN
Mammouth du PHP | 1107 Messages

12 janv. 2009, 14:17

Salut,

Code : Tout sélectionner

<script type="text/javascript"> <!-- var avant = "OO"; var apres = "XX"; var chaine = "-----OO----OO------OO--"; var chaine = chaine.substring(0,chaine.lastIndexOf(avant)) + apres + chaine.substr(avant.length + chaine.lastIndexOf(avant)); document.write(chaine); //--> </script>
:oops: quelque chose me dit qu'il y a beaucoup plus simple ...
Possible, mais ta solution semble marcher : ) Je la garde donc. Merci beaucoup.

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]