json.path.delete: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 36: | Line 36: | ||
Either statement return the json without the "Punch", | Either statement return the json without the "Punch", | ||
<source lang="mtmacro" line> | |||
{"Troll":{"name":"Troll","HP":75,"Attacks":["Claw","Bite"]},"Orc":{"name":"Orc","HP":13,"Attacks":["Sword"]}} | |||
</source> | |||
}} | |||
[[Category:JSON Function]] | [[Category:JSON Function]] |
Revision as of 17:38, 11 September 2019
json.path.delete() Function
• Introduced in version 1.5.5
Return a JSON Array or JSON Object with deleted elements. These deletions are specified through the path parameter. Additional information on how to specify the path is availabe here.
Usage
json.path.delete(json, path)
Parameters
json
- The json element to delete the value from.path
- The path of the values.
Examples
Suppose we have the following nested json:
[h:troll = json.set("{}", "name", "Troll", "HP", 75, "Attacks", json.append("Claw", "Bite"))]
[h:orc = json.set("{}", "name", "Orc", "HP", 13, "Attacks", json.append("Sword", "Punch"))]
[h:monsters = json.set("{}", "Troll", troll, "Orc", orc)]
To delete the "Punch" attack of the Orc, we could write
[r: json.path.delete(monsters, "Orc.Attacks.[1]")]
or, alternatively,
[r: json.path.delete(monsters, "Orc.Attacks[?(@ == 'Punch')]")]
Either statement return the json without the "Punch",
{"Troll":{"name":"Troll","HP":75,"Attacks":["Claw","Bite"]},"Orc":{"name":"Orc","HP":13,"Attacks":["Sword"]}}