Замена символа новой строки в JavaScript - PullRequest
16 голосов
/ 14 апреля 2011

Я пытаюсь заменить экземпляры \r или \n символов в моем объекте json на <br /> для отображения на веб-сайте.

Я пытался:

myString = myString.replace("\\r?\\n", "<br />");

Но это, похоже, ничего не делает.Когда я заменяю регулярное выражение чем-то другим (например, "a", замена работает как положено).Есть идеи, почему это не работает для символов новой строки?

Ответы [ 4 ]

42 голосов
/ 14 апреля 2011

Попробуйте:

myString = myString.replace(/[\r\n]/g, "<br />");

Обновление : Как сказал Пойнти в комментарии ниже, это заменит последовательность \r\n на два <br />, правильное выражениедолжно быть:

myString = myString.replace(/\r?\n/g, "<br />");
1 голос
/ 26 июля 2017

CSS:

 white-space: pre-wrap;

Это гораздо более эффективный метод.

1 голос
/ 21 июля 2015

Это сработало для меня:

str = str.replace(/\\n|\\r\\n|\\r/g, '<br/>');

Использование двойной косой черты

1 голос
/ 14 апреля 2011

попробуй replace(/\r\n|\n/, '<br />')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...