你能帮助我,我如何验证以下json中列表项的“键”(例如“1”,“2”,“3”):
{
"list" : {
"1" : {
"element1" : "1",
"element2" : "2"
},
"2" : {
"element1" : "1",
"element2" : "2"
},
....
"512" : {
"element1" : "1",
"element2" : "2"
}
}
}
请给我一些常见的例子来验证json中的密钥。
答案 0 :(得分:0)
JSON Schema有三种方法来约束对象的属性名称。
<强>属性强>
properties
关键字允许您为属性名称设置完全匹配。
{
"type": "object",
"properties": {
"1": { ... },
"2": { ... },
...
}
}
<强> patternProperties 强>
patternProperties
关键字约束任何与正则表达式匹配的属性名称,以针对给定的架构进行验证。
{
"type": "object",
"patternProperties": {
"[1-9][0-9]*": { ... }
}
}
<强> propertyNames 强>
propertyNames
关键字约束属性名称以匹配给定的架构。
{
"type": "object",
"propertyNames": {
"pattern": "[1-9][0-9]*"
}
}
修改12-19-2018 改善答案,添加缺失的patternProperties
,添加新的(自原始答案)选项propertyNames
。