Sta a te definire le regole per la tua app.
Ad esempio, puoi definire che:
-
Gli spazi bianchi prima o dopo il segno di uguaglianza vengono ignorati,
-
Gli spazi bianchi all'interno della chiave sono vietati,
-
Gli spazi bianchi all'interno del valore possono essere utilizzati solo se il valore è racchiuso tra virgolette, quindi:
say-hello = Hello, World!
è vietato, mentre:
say-hello = "Hello, World!"
è permesso, il che rende anche possibile avere prefissi di uno spazio:
say-hello = " Indentation is sweet."
La definizione di un formato può essere un compito complesso. Ad esempio:
-
Come puoi evitare le virgolette?
-
Come fai a sfuggire al carattere di escape che usi per sfuggire alle virgolette?
-
Come gestisci i valori vuoti?
-
Qual è la lunghezza massima di una chiave? Che dire di un valore?
-
Come gestisci i valori multilinea?
-
E i caratteri Unicode di spazi bianchi diversi da uno spazio (come un carattere di spazio non frazionato)?
-
Che dire dei caratteri Unicode che di solito non vengono visualizzati sullo schermo ? Ad esempio, come gestisci le categorie Unicode Cf o Zl?
-
Quali sono i caratteri consentiti nella chiave? Ad esempio, è:
'
una chiave valida?
-
La linea seguente dovrebbe funzionare? ¹
say-hello ꘌ "Hello, World!"
Suggerimento: il segno di uguaglianza non è un segno di uguaglianza, ma il carattere 0xa60c (Vai syllable lengthener). Sebbene poche persone utilizzino questo simbolo anziché l'uguaglianza, il caso più frequente è una copia-incolla da Microsoft Word (guarda attentamente le virgolette):
say-hello = “Hello, World!”
-
ecc.
Questo è il motivo per cui, a meno che tu non sia completamente sicuro che puoi definire un formato e descriverlo con precisione e in modo verbale, utilizza un formato già esistente .
JSON o XML sono formati comunemente usati che puoi utilizzare in quasi tutti i linguaggi di programmazione. È anche possibile astrarre il formato sottostante utilizzando un database. Redis , ad esempio, è una soluzione popolare per l'archivio di valori-chiave.
¹ Gli utenti di Chrome che utilizzano Windows probabilmente vedrebbero un punto interrogativo in un quadrato. Con altri browser o con Chrome su Linux, il personaggio appare come un segno di uguaglianza e può facilmente essere fuorviante: l'unica differenza visiva è che c'è una piccola differenza nello spazio tra le barre orizzontali.