Example #1
0
 /// <summary>
 /// Convert a regex pattern to an equivalent symbolic finite automaton
 /// </summary>
 /// <param name="regex">the given .NET regex pattern</param>
 /// <param name="options">regular expression options for the pattern</param>
 public Automaton <S> Convert(string regex, RegexOptions options = RegexOptions.None)
 {
     return(Convert(regex, options, false));
 }
Example #2
0
        /// <summary>
        /// Convert a regex pattern to an equivalent symbolic regex
        /// </summary>
        /// <param name="regex">the given .NET regex pattern</param>
        /// <param name="options">regular expression options for the pattern (default is RegexOptions.None)</param>
        /// <param name="keepAnchors">if false (default) then anchors are replaced by equivalent regexes</param>
        public SymbolicRegexNode <S> ConvertToSymbolicRegex(string regex, RegexOptions options, bool keepAnchors = false)
        {
            RegexTree tree = RegexParser.Parse(regex, options);

            return(ConvertToSymbolicRegex(tree._root, keepAnchors));
        }