Ich verwende JSON für eine Webanwendung, die ich entwickle. Aber aus verschiedenen Gründen muss ich "Objekte" erstellen, die bereits im Client-Skript basierend auf der JSON-Antwort eines Serviceaufrufs definiert sind. Dazu möchte ich einen Regex-Ausdruck verwenden, um die "neuen" Anweisungen in die JSON-Antwort einzufügen.Wie verwende ich RegEx zum Einfügen in eine JSON-Antwort?
function Customer(cust)
{
this.Name = null;
this.ReferencedBy = null;
this.Address = null;
if (cust != null)
{
this.Name = cust.Name;
this.ReferencedBy = cust.ReferencedBy;
this.Address = cust.Address;
}
}
Die JSON-Antwort wird durch einen ASP.NET AJAX-Dienst zurückgegeben und es enthält ein „__type“ Element, das verwendet werden könnte, um den Objekttyp und legen Sie die „neue“ Erklärung zu bestimmen.
Beispiel JSON:
new Customer({"ReferencedBy":new Customer({"Name":"Rita"}), "Name":Joseph", "Address":"123 {drive}"})
Ich habe dies so weit, aber es funktioniert nicht richtig mit dem ReferencedBy Mitglied:
{"__type":"Customer", "ReferencedBy":{"__type":"Customer", "Name":"Rita"}, "Name":"Joseph", "Address":"123 {drive}"}
Der resultierende String würde wie folgt aussehen.
Spiel:
({"__type":"Customer",)(.*?})
ersetzen:
new Customer({$2})
Danke für die Antwort, aber das wird das Problem mit dem Member ReferenzedBy nicht lösen. Das Beispiel, das ich gepostet habe, ist nur ein kleiner Testfall, es gibt Hunderte von verschiedenen Typen in der Anwendung und die Antwort JSON könnte ein sehr komplexes Netz von Objekten sein, also muss ich die Zeichenfolge transformieren. – cocogza