46 votes

Est-il possible de remplacer tous les retours chariot dans une chaîne via .replace?

Est-il possible de remplacer tous les retours chariot dans une chaîne par la fonction .replace ? J'ai trouvé pas mal de fonctions complexes pour le faire, mais je me demandais si cela pouvait être simplifié avec juste une expression régulière via .replace ?

Merci!

92voto

RobG Points 41170

\ N (nouvelle ligne) et \ r (retour carraige) créent une nouvelle ligne. Pour remplacer toutes les instances des deux en même temps:

 s.replace(/[\n\r]/g, '');
 

Notez que vous voudrez peut-être les remplacer par un seul espace plutôt que rien.

10voto

David Laberge Points 2224

Voici comment faire

 str = str.replace(/\r/gm,'newChar');
 

Par défaut, Javascript replace() remplace la première occurrence. La solution consiste à définir les premiers paramètres comme une expression régulière.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X