Я пытаюсь проверить поле URI (icon
), которое должно начинаться с адреса сервера:
Я связал функции regex
и replace
для проверки, а затем удалилчасть адреса сервера из ввода URI
, вот мой код:
const { baseUrl } = config;
const baseUrlRegex = new RegExp(`^(${baseUrl})`);
export default {
body: {
// other fields
icon: Joi.string()
.regex(baseUrlRegex)
.replace(baseUrlRegex, '')
.required(),
},
};
Проблема в том, что операция replace
происходит перед проверкой операции regex
, поэтому проверка завершится неудачей.
Как проверить строку на соответствие регулярному выражению, а затем заменить некоторую ее часть с помощью Joi
Примечание: проверки работают нормально, если я удалю функцию replace
.