Замена \ n или \ r \ n на в javascript с использованием переменных - PullRequest
1 голос
/ 06 февраля 2020

Я передаю 2 переменные функции javascript,

  1. ReplaceTo = \n/g

и

ReplaceWith = <br />

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

Входная строка: Line 1\nLine 2\nLine 3\n

Желаемая строка вывода: Line 1<br/>Line 2<br/>Line 3<br/>

var inputStr = "Line 1\nLine 2\nLine 3\n";
var ReplaceTo = "\n/g" ;
var ReplaceWith = "<br />";
inputStr = inputStr.replace(ReplaceTo, ReplaceWith);

Я знаю, что если я жестко закодирую функцию замены как .replace(/\\n/g, <br />), она будет работать, но мне нужно использовать переменные как я передаю значения из конфигурации.

Может кто-нибудь, пожалуйста, помогите, как заменить использование переменных с этими специальными символами.

1 Ответ

1 голос
/ 06 февраля 2020

ReplaceTo должен быть регулярным выражением, а не строкой. Вот рабочий код

var inputStr = "Line 1\nLine 2\nLine 3\n";

var inputReplace = new RegExp("\\n", 'g')

var ReplaceWith = "<br />";
inputStr = inputStr.replace(inputReplace, ReplaceWith);
console.log(inputStr)
...