public void Alternation_ByExpression()
        {
            var regex = RegularExpression.Of(
                ConditionalAlternation.For(Literal.For("A"), Literal.For("Abc"), Literal.For("Xyz"))
                ).ToRegex();

            Assert.AreEqual("(?(A)Abc|Xyz)", regex.ToString());
        }
        public void Alternation_ByCapture()
        {
            var regex = RegularExpression.Of(
                CaptureGroup.Of(new CaptureGroupOptions()
            {
                Name = "A"
            }, Quantifiers.OneOrMore(Literal.For("A"))),
                ConditionalAlternation.For(Literal.For("A"), Literal.For("Abc"), Literal.For("Xyz"))
                ).ToRegex();

            Assert.AreEqual("(?<A>A+)(?(A)Abc|Xyz)", regex.ToString());
        }