YuriyGuts.RegexBuilder.RegexNodeAlternation.ToRegexPattern C# (CSharp) Method

ToRegexPattern() public method

public ToRegexPattern ( ) : string
return string
        public override string ToRegexPattern()
        {
            string result;

            if (expressions.Length == 2)
            {
                result = string.Format(CultureInfo.InvariantCulture, "(?:{0}|{1})", expressions[0].ToRegexPattern(), expressions[1].ToRegexPattern());
            }
            else
            {
                StringBuilder resultBuilder = new StringBuilder();
                resultBuilder.Append("(?:");
                for (int i = 0; i < expressions.Length; i++)
                {
                    resultBuilder.Append(expressions[i].ToRegexPattern());
                    if (i < expressions.Length - 1)
                    {
                        resultBuilder.Append("|");
                    }
                }
                resultBuilder.Append(")");
                result = resultBuilder.ToString();
            }

            if (HasQuantifier)
            {
                result += Quantifier.ToRegexPattern();
            }

            return result;
        }