private IEnumerable<MatchWithReplacement> ConvertMatches(string jsonString)
{
Contract.Requires(!string.IsNullOrWhiteSpace(jsonString));
JArray matches = JArray.Parse(jsonString);
Range lastRange = new Range(0,0);
foreach (dynamic match in matches)
{
string content = "" + match.content;
string replacement = "" + match.replacement;
Range range = CreateRangeSafe(lastRange, (int)match.range[0], (int)match.range[1]);
lastRange = range;
yield return new MatchWithReplacement(new Match(content, range), replacement);
}
}