für diesen Moment i Strings wie diese: "document.info.userId"
(json Eigenschaft Pfade) und RegexMuster sie bestätigen: ([\w]+\.)+[\w]+$
Regex Mathe Weg mit spezifischen Symbolen
aber es scheint Zeichenfolge wie folgt zu sein: "document.role#0.id"
(etwas mehr Markup für Arrays) und sie sind gültig für, aber ich kann nicht herausfinden, welche Regexp-Muster zu verwenden. Dieser Index (# 0, # 1, usw.) kann nur vor dem Punkt, nicht in der Mitte eines beliebigen Pfadteils stehen.
Ich habe bereits versucht, Muster ([\w#]+\.)+[\w#]+$
und ([\w]+(#\d+)*\.)+[\w]+(#\d+)*$
aber sie passieren ungültige Pfade wie folgt aus: test.some#a.hello
passieren sollte:
"document.role.id"
"document.role.id.and.other.very.long.path.example"
"document.role#0.id"
"document#1.role#0.id"
"document#1.role#0#1.id"
"document#1.role#0#1.id#21" - terrible representation of array in array
Sollte nicht passieren:
"document."
"document.role."
".document"
"test.some#a.hello"
"docum#ent.role.id"
"document.role.#id"
"docu#1ment.role.id"
"document.ro#0#1le.id"
weitere Beispiele hinzugefügt – aleha
Sie eine Spezifikation der Syntax haben Sie? JsonPath ist eine Alternative zu Ihrer Syntax, die als eine Art "XPath für JSON" definiert ist. –
nur Unterschiede bei der Indizierung von Arrays wie dieser #N – aleha