Задать вопрос
@V0vash

Как удалить элемент массива с подстрокой?

Нужно удалить все элементы содержащую подстроку, моя попытка

let hrefs = [
  '/upload/iblock/5f8/DKS-Prays_list-ot-01.11.20.xls',
  '/upload/iblock/2b8/dkc-_-kabelenesushchie-sistemy-i-eui-_2019-izdanie-34_.pdf',
  '/upload/iblock/004/dkc-_-resheniya-dlya-avtomatizatsii-i-it-_2019-izdanie-34_.pdf',
  '/upload/iblock/878/dkc-_-eui-avanti-_-2019.pdf',
  '/upload/iblock/fec/nizkovoltnoe-oborudovanie-dkc.pdf'
]
 hrefs = hrefs.filter(function(val) { return val.indexOf(".pdf") + 1 });

Результат :
'/upload/iblock/2b8/dkc-_-kabelenesushchie-sistemy-i-eui-_2019-izdanie-34_.pdf',
'/upload/iblock/004/dkc-_-resheniya-dlya-avtomatizatsii-i-it-_2019-izdanie-34_.pdf',
'/upload/iblock/878/dkc-_-eui-avanti-_-2019.pdf',
'/upload/iblock/fec/nizkovoltnoe-oborudovanie-dkc.pdf

Ожидание :
'/upload/iblock/5f8/DKS-Prays_list-ot-01.11.20.xls',
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
hrefs.filter(n => !/\.pdf$/.test(n))
// или
hrefs.filter(n => !n.endsWith('.pdf'))
// или
hrefs.filter(n => n.split('.').pop() !== 'pdf')
// или
hrefs.filter(n => n.lastIndexOf('.pdf') !== n.length - 4)
// или
hrefs.filter(n => n.slice(-4) !== '.pdf')
Ответ написан
Комментировать
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
hrefs.filter(function(val) { return val.indexOf(".pdf") === -1 });
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы