using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"""
(\[|){\n(?<tab> )""id"": ""[0-9]*"",\n\<tab>""type"": [0-9],\n\<tab>""content"": ""[^""]*"",\n\<tab>""channel_id"": ""[0-9]*"",\n\<tab>""author"": {\n(?<dtab> )""id"": ""[^""]*"",\n\<dtab>""username"": ""[^""]*"",\n\<dtab>""avatar"": ""[^""]*"",\n\<dtab>""discriminator"": ""([0-9]{4}|[0-9])"",\n\<dtab>""public_flags"": [0-9]*,\n\<dtab>""flags"": [0-9]*,\n\<dtab>""banner"": (null|""[0-9]*""),\n\<dtab>""accent_color"": (null|""[^""]*""),\n\<dtab>""global_name"": ""[^""]*"",\n\<dtab>""avatar_decoration_data"": (null|""[^""]*""),\n\<dtab>""banner_color"": (null|""[^""]*"")\n\<tab>},\n\<tab>""attachments"": \[[^\]]*\],\n\<tab>""embeds"": \[[^\]]*],\n\<tab>""mentions"": \[[^\]]*],\n\<tab>""mention_roles"": \[[^\]]*\],\n\<tab>""pinned"": (true:|false),\n\<tab>""mention_everyone"": (true|false),\n\<tab>""tts"": (true:|false),\n\<tab>""timestamp"": ""[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{6}\+[0-9]{2}:[0-9]{2}"",\n\<tab>""edited_timestamp"": (null|""[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{6}\+[0-9]{2}:[0-9]{2}""),\n\<tab>""flags"": [0-9]*,\n\<tab>""components"": \[[^\]]*]\n}(\]|\,|)
""";
string input = @"{
""id"": ""1145344233713188874"",
""type"": 0,
""content"": ""913 - this icecream good"",
""channel_id"": ""1124414874454339715"",
""author"": {
""id"": ""746383273621717104"",
""username"": ""kalote."",
""avatar"": ""95b9bdc7aa5784a2354e2ec5256ae736"",
""discriminator"": ""0"",
""public_flags"": 128,
""flags"": 128,
""banner"": null,
""accent_color"": null,
""global_name"": ""Carrot :3"",
""avatar_decoration_data"": null,
""banner_color"": null
},
""attachments"": [],
""embeds"": [],
""mentions"": [],
""mention_roles"": [],
""pinned"": false,
""mention_everyone"": false,
""tts"": false,
""timestamp"": ""2023-08-27T13:09:04.784000+00:00"",
""edited_timestamp"": null,
""flags"": 0,
""components"": []
},";
RegexOptions options = RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx