Cabe a você definir as regras para seu aplicativo.
Por exemplo, você pode definir que:
Espaço em branco antes ou depois do sinal de igualdade ser ignorado,
O espaço em branco dentro da chave é proibido,
O espaço em branco dentro do valor pode ser usado apenas se o valor estiver entre aspas, portanto:
say-hello = Hello, World!
é proibido, enquanto:
say-hello = "Hello, World!"
é permitido, o que também possibilita ter prefixos de espaço em branco:
say-hello = " Indentation is sweet."
Definir um formato pode ser uma tarefa complexa. Por exemplo:
Como você escapa citações?
Como você escapa do caractere de escape usado para escapar de aspas?
Como você lida com valores vazios?
Qual é o comprimento máximo de uma chave? Que tal um valor?
Como você lida com valores de múltiplas linhas?
E os caracteres Unicode de espaço em branco que não sejam um espaço (como um caractere de espaço sem quebra)?
E os caracteres Unicode que geralmente não são exibidos na tela ? Por exemplo, como você lida com as categorias Unicode Cf ou Zl?
Quais são os caracteres permitidos na chave? Por exemplo, é:
'
uma chave válida?
A linha a seguir deve funcionar? ¹
say-hello ꘌ "Hello, World!"
Dica: o sinal de igualdade não é um sinal de igualdade, mas o caractere 0xa60c (prolongador de sílaba Vai). Embora poucas pessoas usem esse símbolo em vez da igualdade, o caso mais frequente é um copiar e colar do Microsoft Word (observe atentamente as aspas):
say-hello = “Hello, World!”
etc.
É por isso que, a menos que você tenha certeza absoluta de que pode definir um formato e descrevê-lo de maneira precisa e detalhada, use um formato que já exista .
JSON ou XML são formatos comumente usados que você pode usar em quase todas as linguagens de programação. Você pode até abstrair o formato subjacente usando um banco de dados. Redis , por exemplo, é uma solução popular para armazenamento de valores-chave.
Users Os usuários do Chrome que usam o Windows provavelmente verão um ponto de interrogação em um quadrado. Em outros navegadores ou no Chrome no Linux, o caractere aparece como um sinal de igualdade e pode ser facilmente enganador: a única diferença visual é que há uma pequena diferença no espaço entre as barras horizontais.