System.Text.RegularExpressions.RegexBoyerMoore.MatchPattern C# (CSharp) Method

MatchPattern() private method

private MatchPattern ( string text, int index ) : bool
text string
index int
return bool
        private bool MatchPattern(string text, int index)
        {
            if (_caseInsensitive)
            {
                if (text.Length - index < _pattern.Length)
                {
                    return false;
                }

                TextInfo textinfo = _culture.TextInfo;
                for (int i = 0; i < _pattern.Length; i++)
                {
                    Debug.Assert(textinfo.ToLower(_pattern[i]) == _pattern[i], "pattern should be converted to lower case in constructor!");
                    if (textinfo.ToLower(text[index + i]) != _pattern[i])
                    {
                        return false;
                    }
                }
                return true;
            }
            else
            {
                return (0 == string.CompareOrdinal(_pattern, 0, text, index, _pattern.Length));
            }
        }