Обрезка новой строки из promt.get в javascript
Так что я в консоли (Rasbian Lite, если быть точным, но я думаю, что это не должно иметь значения). И я прошу пользователя моей js-программы указать некоторые данные (имя, дату рождения и т. Д.). Эти данные затем передаются в программу Python.
Проблема: попав в python, я вставляю символы новой строки в конце значений моей переменной. Я мог бы просто обрезать его в python, но я предпочитаю делать это раньше в javascript.
Вот мой код: Как вы можете видеть, я уже пытался заменить символы новой строки, что не работает.
prompt.get(['name', 'date_start', 'date_end'], function (err, result) {
if (err) {
return onErr(err);
};
console.log('Command-line input received:');
console.log(' Name ' + result.name);
console.log(' Start date: ' + result.date_start);
console.log(' End date: ' + result.date_end);
var PythonShell = require('python-shell');
var pyshell = new PythonShell('new_try_crypto.py');
pyshell.send(result.name.replace('\n', ''));
pyshell.send(result.date_start.replace('\n', ''))
pyshell.send(result.date_end.replace('\n', ''))
1 ответ
Решение
Использование .trim()
:
prompt.get(['name', 'date_start', 'date_end'], function (err, result) {
if (err) {
return onErr(err);
};
console.log('Command-line input received:');
console.log(' Name ' + result.name);
console.log(' Start date: ' + result.date_start);
console.log(' End date: ' + result.date_end);
var PythonShell = require('python-shell');
var pyshell = new PythonShell('new_try_crypto.py');
pyshell.send(result.name.trim());
pyshell.send(result.date_start.trim())
pyshell.send(result.date_end.trim())
};