Ich verstehe, dass in JSON Schlüssel in doppelten Anführungszeichen umgeben sein sollen. Allerdings verwende ich eine Datenquelle, die sie nicht zitiert, was dazu führt, dass der Ruby-JSON-Parser einen Fehler auslöst. Gibt es eine Möglichkeit, "nicht-striktes" Parsen durchzuführen?JSON ohne notierte Schlüssel analysieren
Beispiel:
>> JSON.parse('{name:"hello", age:"23"}')
JSON::ParserError: 618: unexpected token at '{name:"hello", age:"23"}'
from /Library/Ruby/Gems/1.8/gems/json-1.1.7/lib/json/common.rb:122:in `parse'
from /Library/Ruby/Gems/1.8/gems/json-1.1.7/lib/json/common.rb:122:in `parse'
from (irb):5
>> JSON.parse('{"name":"hello", "age":"23"}')
=> {"name"=>"hello", "age"=>"23"}
>>
(Ich habe versucht, einen regulären Ausdruck, die Anführungszeichen vor dem Parsen hinzufügen verwenden, aber konnte es nicht voll funktionsfähig).
Wenn es nicht JSON ist, ist es nicht JSON. Es mag oberflächlich ähnlich aussehen, aber die richtige Lösung ist es, die Quelle so zu reparieren, dass sie JSON statt von etwas gibt, das ein bisschen wie JSON aussieht, aber nicht ist. –
Leider habe ich keine Kontrolle über die Quelle, es ist von einer dritten Partei. –
http://www.google.com/ig/calculator?hl=de&q=100AUD=?USD zum Beispiel erfordert, wonach er fragt. @floyd hat die Lösung unten - und ist akzeptabel – Rabbott