为什么这个正则表达式应该匹配但它失败了?
错误
child "color" fails because ["color" with value "#333acf " fails to match the required pattern: /^#[A-Fa-f0-9]{6}$/]
validate: {
payload:{
avatar: joi.object().keys({
color: joi.string().regex(/^#[A-Fa-f0-9]{6}$/),
icon: joi.string().min(2)
})
}
}
有效载荷
{
"avatar": {color:"#333acf ",icon:"b1"}
}
答案 0 :(得分:0)
您的颜色字符串末尾有一个额外的空格。应该是
{
"avatar": {color:"#333acf",icon:"b1"}
}
或者你的正则表达式需要通过删除字符串锚的结尾来允许超过6个字符的字符串。
/^#[A-Fa-f0-9]{6}/