@MaxYenot

Как найти строки в массиве, содержащие только конкретные символы?

Есть массив, элементом которого являются строки:

const stringArray = [
'мир'
,'Рим'
,'им'
,"ими"
,"ми"
,"Амир"
,"турнир"
]

Нужно получить из него только те слова, которые содержат ТОЛЬКО буквы М, И, Р: или одну, или две, или все.
Но если будет хоть одна другая буква, то это слово не подходит (т.е первые 5 элементов массива подойдут, а остальные нет).
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
arr.filter(RegExp.prototype.test.bind(/^[рим]+$/i))

// или

arr.filter(n => !n.match(/[^рим]/i))

// или

arr.filter(n => !n.replace(/р|и|м/gi, ''))

// или

arr.filter(n => [...n.toLowerCase()].every(m => 'рим'.includes(m)))
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Alexey2236
arr.filter(item => item.includes (" abc"))
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы