Вы можете использовать массив и проверить, прошел ли тест элемент every
массива:
var fruit = 'banana,lemon,mango,apple';
console.log(
['banana', 'lemon', 'mango', 'apple'].every(str => fruit.includes(str))
);
Для решения с использованием регулярных выражений вы можете использовать несколько запросов:
var fruit = 'banana,lemon,mango,apple';
console.log(
/^(?=.*banana)(?=.*lemon)(?=.*mango)(?=.*apple)/.test(fruit)
);
console.log(
/^(?=.*FruitThatDoesntExist)(?=.*lemon)(?=.*mango)(?=.*apple)/.test(fruit)
);
Обратите внимание, что <regex>.test
(возвращает true или false, в зависимости от того, прошла ли строка тест) может быть немного более подходящим, чем str.match(<regex>)
(который возвращает объект сопоставления )