Avatar ·

Comment remplacer toutes les occurrences d'une sous-chaîne dans une chaîne JavaScript ?

Bonjour à tous ! Je suis débutant en JavaScript et j'ai rencontré un problème : je dois remplacer toutes les occurrences d'un mot ou d'un caractère spécifique dans une chaîne. J'ai essayé d'utiliser la méthode replace(), mais elle ne remplace que la première correspondance.\n\nVoici un exemple de mon code :\n\n```javascript\nlet text = "Я люблю JavaScript. JavaScript — это круто!";\nlet newText = text.replace("JavaScript", "Python");\nconsole.log(newText); // Affiche : "Я люблю Python. JavaScript — это круто!"\n```\n\nComme vous pouvez le voir, seul le premier mot "JavaScript" a été remplacé, le second est resté. Comment faire pour que toutes les occurrences soient remplacées ? J'ai entendu dire qu'on pouvait utiliser les expressions régulières, mais je ne les maîtrise pas encore très bien. Existe-t-il une méthode plus simple ? Ou dois-je absolument apprendre RegExp ?\n\nJe serais reconnaissant pour une explication claire avec des exemples. Merci !\n<<>>\n

Solution : méthode replace() avec une expression régulière et le flag g

\n

Vous avez tout à fait raison — la méthode standard replace() sans paramètres supplémentaires ne remplace que la première occurrence.