Проверьте, все ли подстроки существуют в основной строке, используя joi - PullRequest
1 голос
/ 17 апреля 2020

Я пытаюсь проверить, содержит ли строка определенные подстроки, определенные внутри массива:

const subStringElems= ['ELEM1', 'ELEM2', 'ELEM3', 'ELEM4'];

Это код для валидатора данных:

const JoiValidator = require('@hapi/joi');

const subStringElems= ['ELEM1', 'ELEM2', 'ELEM3', 'ELEM4'];
let valSchema = {};

valSchema.manageDataParams = Joi.object().keys({
    stringToBeValidated: Joi.string().required(),
(...)

});

Есть ли способ проверить, содержит ли "stringToBeValidated" все эти 4 элемента, кроме использования регулярных выражений для этой цели?

1 Ответ

0 голосов
/ 17 апреля 2020

Почему вы не можете просто использовать ES6 для этого

const subStringElems = ['ELEM1', 'ELEM2', 'ELEM3', 'ELEM4'];

const myStringWithAllSubstrings = 'ELEM1_ELEM2_ELEM3_ELEM4'
const myStringWithMissingsubstrings = 'ELEM1_ELEM2';

const flag1 = subStringElems.every(x => myStringWithAllSubstrings.includes(x));
const flag2 = subStringElems.every(x => myStringWithMissingsubstrings.includes(x));

console.log('Result 1', flag1);
console.log('Result 2', flag2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...