Heim >Backend-Entwicklung >Golang >Ist diese Zeichenfolge gültiges JSON?

Ist diese Zeichenfolge gültiges JSON?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-10 13:34:02295Durchsuche

Is This String Valid JSON?

Hürden bei der Erkennung von Zeichenfolgen im JSON-Format

In der täglichen Programmierpraxis müssen Entwickler möglicherweise feststellen, ob eine bestimmte Eingabezeichenfolge JSON entspricht Format. Dies kann eine Herausforderung sein, da sich die JSON-Syntax deutlich von typischen String-Formaten unterscheidet.

Lösung: Unmarshaling von JSON-Strings

Ein zuverlässiger Ansatz zur Bewältigung dieser Aufgabe ist die Verwendung von json.Unmarshal (). Diese Funktion gibt einen Fehler zurück, wenn die Eingabezeichenfolge kein gültiges JSON ist, und liefert so einen klaren Hinweis auf das Format der Eingabe.

func IsJSON(str string) bool {
    var js json.RawMessage
    return json.Unmarshal([]byte(str), &js) == nil
}

In diesem Beispiel versucht die Funktion json.Unmarshal(), die Eingabezeichenfolge zu konvertieren in eine JSON-Darstellung. Wenn die Konvertierung erfolgreich ist, gibt die Funktion Null zurück und signalisiert damit, dass die Eingabe im JSON-Format vorliegt. Andernfalls gibt json.Unmarshal() einen Fehler zurück, der darauf hinweist, dass die Eingabe nicht JSON ist.

Indem Sie diese Logik in eine einfache Funktion einbinden, können Sie das Format jeder Eingabezeichenfolge leicht überprüfen, was sie zu einem vielseitigen Werkzeug macht in Ihrem Programmierarsenal.

Das obige ist der detaillierte Inhalt vonIst diese Zeichenfolge gültiges JSON?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn