我遇到了一个问题,我找不到一个好看的方法来解析一个包含多个 JSON 字符串的字符串,如{content1}{content2}{content3}
.
什么是解析这个字符串的好方法,所以结果是:
{content1}
{content2}
{content3}
也许与正则表达式有关?
也许你可以使用string.Split
:
var output = input.Split(new[] {'{', '}'}, StringSplitOptions.RemoveEmptyEntries)
.Select(x => "{" + x + "}")
.ToList();
如果您确定每个 JSON 部分都是一个对象文字,我想您可以简单地将字符串拆分为}\s*{
,因为这永远不会发生在有效的 JSON 中。
您可以使用正则表达式:
string input = "{content1}{content2}{content3}";
var matches = Regex.Match(input, "(?:({[^}]+}) *)*");
string[] contents = matches.Groups[1].Captures.Cast<Capture>().Select(c => c.Value).ToArray();