From 7bb64d81a58f2cbe1e54d8e274e4743fb3df84e3 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Wed, 8 Feb 2017 20:56:32 -0800 Subject: [PATCH] [Filter] Add safeguard case for exact matches --- SabreTools.Helper/Dats/Filter.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/SabreTools.Helper/Dats/Filter.cs b/SabreTools.Helper/Dats/Filter.cs index 7259acba..eea95409 100644 --- a/SabreTools.Helper/Dats/Filter.cs +++ b/SabreTools.Helper/Dats/Filter.cs @@ -476,8 +476,16 @@ namespace SabreTools.Helper.Dats { if (!String.IsNullOrEmpty(straw)) { + string regexStraw = straw; + + // If the straw has no special characters at all, treat it as an exact match + if (regexStraw == Regex.Escape(regexStraw)) + { + regexStraw = "^" + regexStraw + "$"; + } + // Check if a match is found with the regex - found |= Regex.IsMatch(needle, straw, RegexOptions.IgnoreCase); + found |= Regex.IsMatch(needle, regexStraw, RegexOptions.IgnoreCase); } }