|
@@ -10,7 +10,7 @@ namespace analyzeJSON
|
|
|
{
|
|
|
public record Status(bool Success = false, string Message = "");
|
|
|
|
|
|
- public class AnalyzeJSON
|
|
|
+ public partial class AnalyzeJSON
|
|
|
{
|
|
|
private readonly JObject json;
|
|
|
|
|
@@ -35,10 +35,10 @@ namespace analyzeJSON
|
|
|
return string.Empty;
|
|
|
|
|
|
var name = tokenPath.Split(".").LastOrDefault();
|
|
|
- return Regex.Replace(name, @"\[\d+?\]$", "");
|
|
|
+ return string.IsNullOrWhiteSpace(name) ? string.Empty : NameRegex().Replace(name, "");
|
|
|
}
|
|
|
|
|
|
- private void TraverseWithActions(IJEnumerable<JToken> tokens, List<Action<JToken>> actions)
|
|
|
+ private static void TraverseWithActions(IJEnumerable<JToken> tokens, List<Action<JToken>> actions)
|
|
|
{
|
|
|
foreach (var token in tokens)
|
|
|
{
|
|
@@ -73,5 +73,8 @@ namespace analyzeJSON
|
|
|
TraverseWithActions(json.Children(), actions);
|
|
|
return new(true, string.Empty);
|
|
|
}
|
|
|
+
|
|
|
+ [GeneratedRegex(@"\[\d+?\]$")]
|
|
|
+ private static partial Regex NameRegex();
|
|
|
}
|
|
|
}
|