У меня есть строка, которая является «почти» json-строкой, только ее ключи не окружены кавычками. Обычно он используется пользовательским интерфейсом и javascript, который не имеет проблемы при его интерпретации. Однако, похоже, JSON-синтаксические анализаторы на Java, которые я знаю, требуют, чтобы ключ был окружен кавычками.Формат Non Json для формата JSON
Есть ли способ, которым я могу преобразовать строку в действительную строку json, возможно, используя регулярное выражение в Java. Или есть JSON lib, который немного снисходителен.
Строка будет иметь вид
{
A : "Val1",
B : [ SOME NESTED STUFF],
C : "Val3"
}
и мне нужно, чтобы преобразовать его в
{
"A" : "Val1",
"B" : [ SOME NESTED STUFF],
"C" : "Val3"
}
без воздействия вложенного материала. Количество ключей, то есть A, B, C, фиксировано.
P.S. Я не могу получить соответствующую строку JSON, возвращенную мне, это уже существующий код, и довольно рискованно изменить его.
Гарантируют ли Val1 и Val3 двойные кавычки? –
Какой парсер вы используете? – pingw33n
'([^"] \\ w + [^ "]?):' ... это просто у меня на голове, но должен указывать вам в правильном направлении. Идея состоит в том, чтобы работать от двоеточия, так как вы знаете, что ищете один или несколько символов слова, которые не цитируются перед двоеточием. –