Ejemplo n.º 1
0
 public static Regex FromPatternString(string pattern)
 {
     if (RegexCache.ContainsKey(pattern)) {
         return RegexCache[pattern];
     }
     var lexer = new RegexLexer(
         new Cache<TextReader, char>(new CharCacheSource(new StringReader(pattern)))
         );
     var parser = new RegexParser(lexer);
     var regex = parser.Parse();
     RegexCache.Add(pattern, regex);
     return regex;
 }
Ejemplo n.º 2
0
 public RegexParser(RegexLexer lexer)
 {
     _lexer = lexer;
     _lookaheadToken = _lexer.GetNextToken();
     _regexStack.Clear();
 }