Szenario Client eine GET-Anforderung wie diese in einem JSON-Format ist die Antwort machenNehmen regulären Ausdruck auf eine json Antwortdaten
var data = {
"enabled": true,
"state": "schedule",
"schedules": [
{
"rule": {
"start": "2014-06-29T12:36:26.000",
"end": "2014-06-29T12:36:56.000",
"recurrence": [
"RRULE:FREQ=MINUTELY"
]
},
"wifi_state_during_rule": "disabled",
"end_state": "enabled"
}
],
"calculated_wifi_state_now": "disabled",
"time_of_next_state_change": [
"2014-07-08T18:56:56.000Z",
"2014-07-08T18:57:56.000Z"
]
};
Für die Zwecke dieses Beispiels ich das Ergebnis in einer Variablen gespeichert als „Daten ". Meine Regex Ausdrücke ist:
checkPattern = /"\w+\"(?=:)/ //all keys "keyname": ...
Der Grund ideia hier sein nur die Keynames zu bekommen neben ... innerhalb von und Objekt oder ein Array ist, da die Definition von keyname die in JSON ist „keyname“: Das ist, warum ich Ich versuche, den obigen Regex-Ausdruck zu verwenden.
Ich dachte sogar über dies mit einer rekursiven Funktion, aber funktioniert nicht.
Warum regex für diesen Einsatz? JSON-Strings können in JavaScript, C#, Java und vielen anderen Sprachen leicht in tatsächliche Objekte umgewandelt werden. Es ist wirklich nicht notwendig, Regex zu verwenden. Machen Sie also bitte näher auf die Notwendigkeit von Regex aufmerksam oder forschen Sie, um daraus ein Objekt zu machen. Die Info ist da draußen. –
Der Punkt hier verwendet keine Regex oder nicht. Ich möchte nur die Namen extrahieren, selbst wenn sie verschachtelt sind. Ich habe eine Regexp für Testzwecke verwendet – Eudes