From 9798391ae6ff25dddaf944562b9fd0085c4311bc Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Wed, 14 May 2025 16:51:39 -0400 Subject: [PATCH] Add tokenization code to filter group --- SabreTools.Core/Filter/FilterGroup.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/SabreTools.Core/Filter/FilterGroup.cs b/SabreTools.Core/Filter/FilterGroup.cs index e5fa844d..4f29b159 100644 --- a/SabreTools.Core/Filter/FilterGroup.cs +++ b/SabreTools.Core/Filter/FilterGroup.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Text.RegularExpressions; using SabreTools.Models.Metadata; namespace SabreTools.Core.Filter @@ -145,6 +146,19 @@ namespace SabreTools.Core.Filter }; } + /// + /// Tokenize an input string to parse into a filter group + /// + private static string[] Tokenize(string? input) + { + // Null inputs are ignored + if (input == null) + return []; + + // Split the string into parseable pieces + return Regex.Split(input, @"(\(|[a-zA-Z._:!&|""]+|\))"); + } + #endregion } } \ No newline at end of file