using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @",(?=\{""TimePeriod"":)";
string input = @"{""TimePeriod"": {""Start"": ""2017-03-01"", ""End"": ""2017-04-01""}, ""Total"": {""UnblendedCost"": {""Amount"": ""2942.25119998"", ""Unit"": ""USD""}, ""UsageQuantity"": {""Amount"": ""20835"", ""Unit"": ""Hrs""}}, ""Groups"": [], ""Estimated"": false},{""TimePeriod"": {""Start"": ""2017-04-01"", ""End"": ""2017-05-01""}, ""Total"": {""UnblendedCost"": {""Amount"": ""2982.62609983"", ""Unit"": ""USD""}, ""UsageQuantity"": {""Amount"": ""21049"", ""Unit"": ""Hrs""}}, ""Groups"": [], ""Estimated"": false},{""TimePeriod"": {""Start"": ""2017-05-01"", ""End"": ""2017-06-01""}, ""Total"": {""UnblendedCost"": {""Amount"": ""1399.04829988"", ""Unit"": ""USD""}, ""UsageQuantity"": {""Amount"": ""23010"", ""Unit"": ""Hrs""}}, ""Groups"": [], ""Estimated"": false},{""TimePeriod"": {""Start"": ""2017-06-01"", ""End"": ""2017-07-01""}, ""Total"": {""UnblendedCost"": {""Amount"": ""962.47549987"", ""Unit"": ""USD""}, ""UsageQuantity"": {""Amount"": ""20049"", ""Unit"": ""Hrs""}}, ""Groups"": [], ""Estimated"": false}";
foreach (Match m in Regex.Matches(input, pattern))
{
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