Я написал функцию, которая разрывает строку, когда встречает символ новой строки и объединяет все остальные символы вместе.Например, из ввода, которое выглядит как
2\n1 P 3 B 5 P\n2 P 3 B 4 B\n5 P
Я бы в итоге получил массив, который выглядит следующим образом:
[ '2', '1P3B5P', '2P3B4B', '5P' ]
Это прекрасно работает, когда я использую обычную строку, но когда я пытаюсьреализовать его использовать его process.stdin я получаю следующее:
[ '2\\n1P3B5P\\n2P3B4B\\n5P' ]
Моя реализация:
let input;
let stringAsTest = `2\n1 P 3 B 5 P\n2 P 3 B 4 B\n5 P`
function convertString(str) {
return str.replace(/ +?/g, '').split('\n').filter(
el => el != ''
)
}
process.stdin.on('data', (data) => {
input = data.toString()
convertString(input) // this doesnt work [ '2\\n1P3B5P\\n2P3B4B\\n5P' ]
convertString(stringAsTest) // this works as expected [ '2', '1P3B5P', '2P3B4B', '5P' ]
process.exit();
})