Показать сообщение отдельно
  #14 (permalink)  
Старый 28.06.2020, 16:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Alexandroppolus
представленные варианты неправильно работают, если, например, в строке есть слово "пилорама", а проверяем наличие слова "рама".
Проблема.

function a() {
    let text = "мамалыга и папа акамама мыли раму хорошо, кошка мыла себя",
        find = "мыла Мама раму".split(/\s+/),
        re = new RegExp('(?<=\\s)('+find.join('|')+')(?=\\s)','gi'),
        check = text.match(re).filter((e, i, a)=> a.indexOf(e) == i).length;
    return check == find.length ? 'All words' : check + ' words'
}

alert(a())
Ответить с цитированием