Почему .replace не будет работать внутри .map - PullRequest
0 голосов
/ 16 мая 2018

У меня есть регулярное выражение, которое я использую для замены двух экранированных символов.Я могу заменить их прямым доступом к ним, но не могу с помощью функции карты.Может кто-нибудь объяснить, что я не так понимаю?

var entry = [ '\n000087',
  '1',
  '000055555',
  'admin',
  '1',
  '0',
  '2018/07/06',
  '08:53:14\t' ];

entry = entry.map((item)=>{
    return item.replace('/\\(?:[a-z])/g','');
});
console.log(entry);//does not remove \n or \t
console.log(entry[0].replace('/\\(?:[a-z])/g','')); // does remove \n

1 Ответ

0 голосов
/ 16 мая 2018

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

var entry = [ '\n000087',
  '1',
  '000055555',
  'admin',
  '1',
  '0',
  '2018/07/06',
  '08:53:14\t' ];

entry = entry.map((item)=>{
    return item.replace(/[\t\n]+/g,'');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...