public FluentRegex MatchOneOf(FluentRegex first, FluentRegex second, params FluentRegex[] additionalChoices) { _sb.AppendFormat(@"({0}|{1}", first, second); foreach (FluentRegex choice in additionalChoices) { _sb.AppendFormat(@"|{0}", choice); } _sb.Append(@")"); return(this); }
public Repeat(FluentRegex parentpattern) { _fRegex = parentpattern; }
/// <summary> /// Pattern must NOT be found before the next pattern. /// </summary> /// <param name="Pattern"></param> /// <returns></returns> public FluentRegex NegativeBackwardAssertion(FluentRegex Pattern) { _sb.AppendFormat(@"(?<!{0})", Pattern); return(this); }
/// <summary> /// Pattern must be found ahead, but will not be included in the match. /// </summary> /// <param name="Pattern"></param> /// <returns></returns> public FluentRegex PositiveForwardAssertion(FluentRegex Pattern) { _sb.AppendFormat(@"(?={0})", Pattern); return(this); }
public FluentRegex MatchAnyCharacterNotInSet(FluentRegex pattern) { _sb.AppendFormat(@"[^{0}]", pattern.ToString()); return(this); }
/// <summary> /// Define a named match group /// </summary> /// <param name="Pattern"></param> /// <param name="Name"></param> /// <returns></returns> public FluentRegex NamedGroup(FluentRegex Pattern, string Name) { _sb.AppendFormat(@"(?<{1}>{0})", Pattern, Name); return(this); }
/// <summary> /// Define a match group /// </summary> /// <param name="pattern"></param> /// <returns></returns> public FluentRegex Group(FluentRegex pattern) { _sb.AppendFormat(@"({0})", pattern); return(this); }