假设你有这个简单的架构
{
"type": "string",
"minLength": 2,
}
值"ab"
有效,但值"a "
或" "
也有效。有没有办法在验证长度时忽略空格,所以在这个例子中只有"ab"
有效?
答案 0 :(得分:4)
这样的事情应该有效:
{
"pattern": "^(\\s*\\w\\s*){2,}$"
}
"至少2个组,其中每个组只有一个非空格字符(可选择用空格字符包围)"。
"" -> false
" " -> false
" " -> false
" a" -> false
"a " -> false
" a " -> false
" a b " -> true
"ab" -> true
答案 1 :(得分:0)
我对JSON架构知之甚少,无法确切地说是否有办法用length属性做你要求的事情。但是,如果您知道允许使用哪些非空白字符,则可以执行以下操作,允许使用任意数量的空白字符以及两个必需字符(在本例中为字母字符)。
注意:我在easy testing
的数组中进行了声明{
"type": "array"
, "items": {
"type":"string"
, "pattern": "[A-Za-z]\\s*[A-Za-z]"
}
}
一些测试:
[
"ab"
, "a " // fails
, " " // fails
, "cz"
, "a b"
, " a b"
, " b" // fails
]