Проверка строки на содержание слов из массив

Возможно вопрос покажется глупым. У меня есть массив матерных слов и есть строка. Мне нужно узнать, содержит ли строка именно слова из массива.

let array = ['привет','пока']
let str = 'пока'
let str2 = str.split(' ')

Ответы (2 шт):

Автор решения: Алексей Шиманский

let badWords = ['привет','пока']
let str = 'пока    показ     пивет';
let rule=/\s{1,}/g;
let stringParts = str.split(rule); 

let hasWord = false;
stringParts.forEach(word => {
    if (badWords.includes(word))
        hasWord = true;     
});

if (hasWord) 
    console.log('В строке есть слово из массива')
else 
    console.log('Слова не обнаружены')

→ Ссылка
Автор решения: ccxdec

Есть еще такой вариант, если не использовать RegEx.

let array = ['привет', 'пока']
let target = 'пока привет показ ';
let words = target.split(' ').filter(s => s !== '')

const isArrayIncludesTarget = words.some(word => {
    return array.includes(word);
});

console.log(isArrayIncludesTarget)

→ Ссылка