using PARR.BLL.Services.Interfaces; using System.Text.RegularExpressions; namespace PARR.BLL.Services.Implementations { internal class TemplateMaskValidator : ITemplateMaskValidator { public bool IsValid(string mask) { if (!mask.Contains("ПАРР")) return false; var shortcodePattern = "%[^%\\s]+%"; var shortcodesInMask = Regex.Matches(mask, shortcodePattern).ToList(); if (shortcodesInMask.Count() == 0) return false; var validShortcodes = GetShortcodesNames(); foreach (var shortcode in shortcodesInMask) { if (!validShortcodes.Contains(shortcode.ToString().ToUpper())) return false; } return true; } private List GetShortcodesNames()//TODO Ну ты опять этот метод дублируешь?! { var result = new List { "%ЭК%", "%ЗО%", "%РАБОТА%" }; return result; } } }