如何在不知道FileMaker 16或17中元素的名称的情况下从JSON字符串中获取第一个元素?

如何在不知道FileMaker 16或17中元素的名称的情况下从JSON字符串中获取第一个元素?,json,filemaker,Json,Filemaker,今天我与Filemaker讨论了如何在不知道密钥的情况下从json结果中获取第一个元素的问题 示例$json来自API调用 { "26298070": { "task_id": "26298070", "parent_id": "0", "name": "DEPOT-0045 Research ODBC Model Extraction via Django To cut down on development time from File

今天我与Filemaker讨论了如何在不知道密钥的情况下从json结果中获取第一个元素的问题

示例$json来自API调用

{
    "26298070": {
        "task_id": "26298070",
        "parent_id": "0",
        "name": "DEPOT-0045 Research ODBC Model Extraction via Django To cut down on development time from Filemaker to Postgres",
        "external_task_id": "32c8fd51-2066-42b9-b88b-8a2275fafc3f",
        "external_parent_id": "64e7c829-d88e-48ae-9ba4-bb7a3871a7ce",
        "level": "1",
        "add_date": "2018-06-04 21:45:16",
        "archived": "0",
        "color": "#34C644",
        "tags": "DEPOT-0045",
        "budgeted": "1",
        "checked_date": null,
        "root_group_id": "91456",
        "assigned_to": null,
        "assigned_by": null,
        "due_date": null,
        "note": "",
        "context": null,
        "folder": null,
        "repeat": null,
        "billable": "0",
        "budget_unit": "hours",
        "public_hash": null,
        "modify_time": null
    }
}
我尝试了JSONGetElement($json,“”),得到了原始的json。 我尝试了JSONGetElement($json,“.”),得到了原始的json。 我尝试了JSONGetElement($json,1),但什么也没有得到


如何在不知道FileMaker 16或17中元素名称的情况下从JSON字符串中提取第一个元素?

我记得FileMaker有一个从文本中提取单词的功能,所以我想如果我提取第一个单词作为键,我会看到发生了什么

我试过了

JSONGetElement ( $json ; MiddleWords ( $json,1,1 ) )
得到了我想要的结果

{
    "add_date": "2018-06-04 21:45:16",
    "archived": "0",
    "assigned_by": null,
    "assigned_to": null,
    "billable": "0",
    "budget_unit": "hours",
    "budgeted": "1",
    "checked_date": null,
    "color": "#34C644",
    "context": null,
    "due_date": null,
    "external_parent_id": "64e7c829-d88e-48ae-9ba4-bb7a3871a7ce",
    "external_task_id": "32c8fd51-2066-42b9-b88b-8a2275fafc3f",
    "folder": null,
    "level": "1",
    "modify_time": null,
    "name": "DEPOT-0045 Research ODBC Model Extraction via Django To cut down on development time from Filemaker to Postgres",
    "note": "",
    "parent_id": "0",
    "public_hash": null,
    "repeat": null,
    "root_group_id": "91456",
    "tags": "DEPOT-0045",
    "task_id": "26298070"
}

这使得解析使用属性作为键的简单JSON模式变得容易。

我记得FileMaker有一个从文本中提取单词的功能,所以我想如果我提取第一个单词作为键,我会看到发生了什么

我试过了

JSONGetElement ( $json ; MiddleWords ( $json,1,1 ) )
得到了我想要的结果

{
    "add_date": "2018-06-04 21:45:16",
    "archived": "0",
    "assigned_by": null,
    "assigned_to": null,
    "billable": "0",
    "budget_unit": "hours",
    "budgeted": "1",
    "checked_date": null,
    "color": "#34C644",
    "context": null,
    "due_date": null,
    "external_parent_id": "64e7c829-d88e-48ae-9ba4-bb7a3871a7ce",
    "external_task_id": "32c8fd51-2066-42b9-b88b-8a2275fafc3f",
    "folder": null,
    "level": "1",
    "modify_time": null,
    "name": "DEPOT-0045 Research ODBC Model Extraction via Django To cut down on development time from Filemaker to Postgres",
    "note": "",
    "parent_id": "0",
    "public_hash": null,
    "repeat": null,
    "root_group_id": "91456",
    "tags": "DEPOT-0045",
    "task_id": "26298070"
}

这使得解析使用属性作为键的简单JSON模式变得很容易。

对根元素尝试以下操作:

JSONListKeys($json;“”)

结果:26298070
一旦获得根,就可以获得子键。

对根元素尝试以下操作:

JSONListKeys($json;“”)

结果:26298070
一旦得到根,就可以得到子键。

我仍然喜欢这个答案,如果有多个顶级元素,它就会失败。为了避免这个问题,我又使用了MIddleWords。我仍然喜欢这个答案,如果有多个顶级元素,它就会失败。为了避免这个问题,我又使用了中间词。