tidwall / sjson

Set JSON values very quickly in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How should I update the key if there are dots and slashes in the key?

echo567 opened this issue · comments

example:
{ "name": "test", "address": { "a.b.c/d": "off", "asd": "asd" } }
image
I want to change the value of a.b.c/d to abc
How should it be achieved?
thanks

You can use \\ to escape them. eg:

value, err = sjson.Set(value, "address.a\\.b\\.c\\/d", "some value")

Haven't tested escaping a / before though so you might have to tweak it.

If you're using gjson, you can also do:

value, err = sjson.Set(value, gjson.Escape("address.a.b.c/d"), "some value")