Как заменить новую строку в строке на ','
? У меня есть строка, которая читается из файла:
const fileText = (<FileReader>fileLoadedEvent.target).result.toString();
file.readCSV(fileText);
Он берет строку из файла:
a,b,c,d,e,f
,,,,,
g,h,i,j,k,l
Я могу обнаружить новую строку с помощью этого:
if (char === '\n')
Но замена \n таким образом не работает
str = csvString.replace('/\n/g');
Я хочу, чтобы строка выглядела так:
a,b,c,d,e,f,
,,,,,,
g,h,i,j,k,l,
Попробуйте заменить шаблон $
на ,
, запятая:
var input = 'a,b,c,d,e,f';
input = input.replace(/$/mg, ",");
console.info(input);
Поскольку вы намерены сохранить переводы строк/возвраты каретки, мы можем просто воспользоваться $
для представления конца каждой строки.
Вы можете добавить ,
в конце каждой строки, как это
$
— соответствует концу строкиlet str = `a,b,c,d,e,f
,,,,,
g,h,i,j,k,l`
let op = str.replace(/$/mg, "$&"+ ',')
console.info(op)
@mattiscodings это ссылка на всю математику Читать здесь
Я считаю, что в некоторых системах новая строка — это \r\n
или просто \r
, так что попробуйте /\r?\n|\r/
let text = `a,b,c,d,e,f
,,,,,
g,h,i,j,k,l`;
let edited = text.replace(/\s+/g, '');
console.info( edited )
Вы также можете попробовать это решение. \s
означает пробелы.
Вы можете попробовать, например,
// Let us have some sentences havin linebreaks as \n.
let statements = " Programming is so cool. \n We love to code. \n We can built what we want. \n :)";
// We will console it and see that they are working fine.
console.info(statements);
// We may replace the string via various methods which are as follows,
// FIRST IS USING SPLIT AND JOIN
let statementsWithComma1 = statements.split("\n").join(",");
// RESULT
console.info("RESULT1 : ", statementsWithComma1);
// SECOND IS USING REGEX
let statementsWithComma2 = statements.replace(/\n/gi, ',');
// RESULT
console.info("RESULT2 : ", statementsWithComma2);
// THIRS IS USING FOR LOOP
let statementsWithComma3 = "";
for(let i=0; i < statements.length; i++){
if (statements[i] === "\n")
statementsWithComma3 += ','
else
statementsWithComma3 += statements[i]
}
// RESULT
console.info("RESULT3 : ", statementsWithComma3);
для чего нужен второй аргумент замены? "$&"+