public SearchParameters(StringComparison stringComparison, SearchType searchType, TrimSetting trimSetting, RegexOptions regexOptions, SplitSettings splitSettings)
 {
     this.StringComparison = stringComparison;
     this.SearchType       = searchType;
     this.TrimSetting      = trimSetting;
     this.RegexOptions     = regexOptions;
     this.SplitSettings    = splitSettings;
 }
        public static IEnumerable <string> Split(string inputText, string seperatorsText, SplitSettings split)
        {
            Assert.NotNull(inputText);
            Assert.NotNull(seperatorsText);
            string[] seperators = seperatorsText.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
            for (int i = 0; i < seperators.Length; i++)
            {
                if (seperators[i] == NEW_LINE_COMBOBOX)
                {
                    seperators[i] = Environment.NewLine;
                }
            }
            IEnumerable <string> result;

            switch (split)
            {
            case SplitSettings.Regex:
                result = Regex.Split(inputText, String.Join("|", seperators), RegexOptions.IgnoreCase).Where(x => !String.IsNullOrWhiteSpace(x));
                break;

            case SplitSettings.RegexCaseSensitive:
                result = Regex.Split(inputText, String.Join("|", seperators), RegexOptions.None).Where(x => !String.IsNullOrWhiteSpace(x));
                break;

            case SplitSettings.NormalCaseSensitive:
                result = inputText.Split(seperators, StringSplitOptions.RemoveEmptyEntries);
                break;

            default: throw new Exception("Seperate() " + split);
            }
            return(result);
        }