Добавьте кавычки в строку, чтобы сделать ее JSON в C# - PullRequest
0 голосов
/ 23 января 2020

Я использую сервис, который использует JSON формат.

Но откуда я получаю JSON не содержит двойных кавычек вокруг ключа и значений.

Это пример данных, которые у меня есть

[{name:{buyerfirstname:Randy, buyermiddlename:null, buyerlastname:Johnson}, buyerfullname:Randy Johnson, businessname:null}]

Как я могу преобразовать это в JSON в C#

Примечание: ноль не должен содержать двойные кавычки

1 Ответ

0 голосов
/ 23 января 2020

Итак, я играл с вашей строкой и, основываясь на комментариях, что ваша строка сформирована неправильно, поэтому я разработал метод, использующий Regular Expressions для анализа данных из рассматриваемой строки. Пожалуйста, найдите код ниже для моей попытки и рабочий пример здесь: https://dotnetfiddle.net/XLSde4

using System;
using System.Text.RegularExpressions;

public class Program
{
    public static void Main()
    {
         string str = "[{name:{buyerfirstname:Randy, buyermiddlename:null, buyerlastname:Johnson}, buyerfullname:Randy Johnson, businessname:null}]";
         showMatch(str, @"(?<=[:,])(.*?)(?=\}[,\]])");
    }

     private static void showMatch(string text, string expr) {
         MatchCollection mc = Regex.Matches(text, expr);
         string[] matches=new string[10000];
         foreach (Match m in mc) {
            string tailored=m.Value.Trim().Replace("{","");
            matches = Regex.Split(tailored, ","); 
            for(int i=0;i<matches.Length;i++)
            {
                Console.WriteLine(matches[i].ToString().Trim());
            }   
         }
      }
}

Вывод:

buyerfirstname:Randy
buyermiddlename:null
buyerlastname:Johnson
buyerfullname:Randy Johnson
businessname:null

Надеюсь, это поможет вам или по крайней мере, дать вам направление куда-то начинать.

...