SyntaxFactory Class

Builds regular-expression syntax nodes programmatically.

public static class SyntaxFactory

Remarks

A node built here carries no source position and no trivia, which is what makes it usable as a replacement: replacing a node keeps the whitespace in front of it precisely because the replacement brought none of its own. A node built here also reports RegexPatternOptions.None, because it was never read under any.

Methods

NameDescription
Alternation(SeparatedSyntaxList<RegexSequenceSyntax>, RegexPatternOptions)Builds a RegexAlternationSyntax from its parts.
Alternation(IEnumerable<RegexSequenceSyntax>)Creates an alternation from its branches, putting a | between them.
Anchor(RegexAnchorKind)Creates an anchor such as ^ or \b.
Anchor(SyntaxToken, RegexPatternOptions)Builds a RegexAnchorSyntax from its parts.
AnyCharacter()Creates ., which matches any character.
AnyCharacter(SyntaxToken, RegexPatternOptions)Builds a RegexAnyCharacterSyntax from its parts.
AtomicGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexAtomicGroupSyntax from its parts.
Backreference(SyntaxToken, RegexPatternOptions)Builds a RegexBackreferenceSyntax from its parts.
BacktrackingVerb(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexBacktrackingVerbSyntax from its parts.
BalancingGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)Builds a RegexBalancingGroupSyntax from its parts.
BranchResetGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexBranchResetGroupSyntax from its parts.
Callout(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexCalloutSyntax from its parts.
CapturingGroup(SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)Builds a RegexCapturingGroupSyntax from its parts.
CharacterClass(SyntaxToken, SyntaxToken, SyntaxList<RegexSyntaxNode>, SyntaxToken, RegexPatternOptions)Builds a RegexCharacterClassSyntax from its parts.
CharacterClass(bool, IEnumerable<RegexSyntaxNode>)Creates a character class from its members.
CharacterClassEscape(SyntaxToken, RegexPatternOptions)Builds a RegexCharacterClassEscapeSyntax from its parts.
CharacterEscape(SyntaxToken, RegexPatternOptions)Builds a RegexCharacterEscapeSyntax from its parts.
CharacterRange(RegexSyntaxNode, SyntaxToken, RegexSyntaxNode?, RegexPatternOptions)Builds a RegexCharacterRangeSyntax from its parts.
CharacterRange(char, char, RegexDialect)Creates a range such as a-z, for use inside a character class.
ClassEscape(char)Creates a shorthand class escape such as \d.
ClassSetOperation(SeparatedSyntaxList<RegexSyntaxNode>, RegexPatternOptions)Builds a RegexClassSetOperationSyntax from its parts.
ClassStringLiteral(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexClassStringLiteralSyntax from its parts.
ClassSubtraction(SyntaxToken, RegexCharacterClassSyntax, RegexPatternOptions)Builds a RegexClassSubtractionSyntax from its parts.
CollatingElement(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexCollatingElementSyntax from its parts.
Conditional(SyntaxToken, SyntaxToken, RegexSyntaxNode?, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexConditionalSyntax from its parts.
ConditionalReference(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexConditionalReferenceSyntax from its parts.
Group(RegexAlternationSyntax, int)Wraps alternation in a capturing group.
InlineOptions(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexInlineOptionsSyntax from its parts.
Literal(SyntaxToken, RegexPatternOptions)Builds a RegexLiteralSyntax from its parts.
Literal(char, RegexDialect)Creates a literal that matches value exactly, escaping it where the dialect needs it.
LiteralText(string, RegexDialect)Creates a sequence that matches value literally, escaping every character that needs it.
Lookaround(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexLookaroundSyntax from its parts.
MissingToken(SyntaxKind)Creates a zero-width token standing in for one a pattern does not have.
NamedBackreference(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexNamedBackreferenceSyntax from its parts.
NamedGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)Builds a RegexNamedGroupSyntax from its parts.
NonCapturingGroup(RegexAlternationSyntax)Wraps alternation in a non-capturing group, (?:…).
NonCapturingGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexNonCapturingGroupSyntax from its parts.
OptionsGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)Builds a RegexOptionsGroupSyntax from its parts.
Pattern(SyntaxToken, RegexAlternationSyntax, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexPatternSyntax from its parts.
PosixCharacterClass(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexPosixCharacterClassSyntax from its parts.
Quantified(RegexAtomSyntax, char, RegexQuantifierMode)Applies *, +, or ? to atom.
Quantified(RegexAtomSyntax, int, int?, RegexQuantifierMode)Applies a {n,m} bound to atom. Pass null for an unbounded maximum.
Quantified(RegexTermSyntax, RegexQuantifierSyntax, RegexPatternOptions)Builds a RegexQuantifiedSyntax from its parts.
QuotedLiteral(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexQuotedLiteralSyntax from its parts.
RangeQuantifier(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexRangeQuantifierSyntax from its parts.
Recursion(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexRecursionSyntax from its parts.
Sequence(SyntaxList<RegexTermSyntax>, RegexPatternOptions)Builds a RegexSequenceSyntax from its parts.
Sequence(IEnumerable<RegexTermSyntax>)Creates a sequence from its terms.
SimpleQuantifier(SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexSimpleQuantifierSyntax from its parts.
SkippedText(SyntaxTokenList, RegexPatternOptions)Builds a RegexSkippedTextSyntax from its parts.
Token(SyntaxKind, string, string?)Creates a token of the given kind and text.
Trivia(SyntaxKind, string)Creates trivia of the given kind and text.
UnicodeCategory(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)Builds a RegexUnicodeCategorySyntax from its parts.

Alternation overloads

Alternation(SeparatedSyntaxList<RegexSequenceSyntax>, RegexPatternOptions)

Syntax.g.cs

Alternation(IEnumerable<RegexSequenceSyntax>)

SyntaxFactory.cs

Creates an alternation from its branches, putting a | between them.

public static RegexAlternationSyntax Alternation(params IEnumerable<RegexSequenceSyntax> branches)
Parameters
branches IEnumerable<RegexSequenceSyntax>
Returns

RegexAlternationSyntax

Exceptions
ArgumentNullException
branches is null.

Anchor overloads

Anchor(RegexAnchorKind)

SyntaxFactory.cs

Creates an anchor such as ^ or \b.

public static RegexAnchorSyntax Anchor(RegexAnchorKind kind)
Parameters
kind RegexAnchorKind
Returns

RegexAnchorSyntax

Anchor(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexAnchorSyntax from its parts.

public static RegexAnchorSyntax Anchor(SyntaxToken anchorToken, RegexPatternOptions options)
Parameters
anchorToken SyntaxToken
options RegexPatternOptions
Returns

RegexAnchorSyntax

AnyCharacter overloads

AnyCharacter()

SyntaxFactory.cs

Creates ., which matches any character.

public static RegexAnyCharacterSyntax AnyCharacter()

AnyCharacter(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexAnyCharacterSyntax from its parts.

public static RegexAnyCharacterSyntax AnyCharacter(SyntaxToken dotToken, RegexPatternOptions options)

AtomicGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexAtomicGroupSyntax from its parts.

public static RegexAtomicGroupSyntax AtomicGroup(SyntaxToken openParenToken, SyntaxToken groupKindToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)

Parameters

openParenToken SyntaxToken
groupKindToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions

Returns

RegexAtomicGroupSyntax

Backreference(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexBackreferenceSyntax from its parts.

public static RegexBackreferenceSyntax Backreference(SyntaxToken backreferenceToken, RegexPatternOptions options)

Parameters

backreferenceToken SyntaxToken
options RegexPatternOptions

Returns

RegexBackreferenceSyntax

BacktrackingVerb(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexBacktrackingVerbSyntax from its parts.

public static RegexBacktrackingVerbSyntax BacktrackingVerb(SyntaxToken openParenToken, SyntaxToken verbToken, SyntaxToken closeParenToken, RegexPatternOptions options)

Parameters

openParenToken SyntaxToken
verbToken SyntaxToken
closeParenToken SyntaxToken
options RegexPatternOptions

Returns

RegexBacktrackingVerbSyntax

BalancingGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)

Syntax.g.cs

Builds a RegexBalancingGroupSyntax from its parts.

public static RegexBalancingGroupSyntax BalancingGroup(SyntaxToken openParenToken, SyntaxToken groupKindToken, SyntaxToken nameToken, SyntaxToken hyphenToken, SyntaxToken previousNameToken, SyntaxToken closeNameToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions, int number)

Parameters

openParenToken SyntaxToken
groupKindToken SyntaxToken
nameToken SyntaxToken
hyphenToken SyntaxToken
previousNameToken SyntaxToken
closeNameToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions
number int

Returns

RegexBalancingGroupSyntax

BranchResetGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexBranchResetGroupSyntax from its parts.

public static RegexBranchResetGroupSyntax BranchResetGroup(SyntaxToken openParenToken, SyntaxToken groupKindToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)

Parameters

openParenToken SyntaxToken
groupKindToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions

Returns

RegexBranchResetGroupSyntax

Callout(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCalloutSyntax from its parts.

public static RegexCalloutSyntax Callout(SyntaxToken openParenToken, SyntaxToken questionToken, SyntaxToken bodyToken, SyntaxToken closeParenToken, RegexPatternOptions options)

Parameters

openParenToken SyntaxToken
questionToken SyntaxToken
bodyToken SyntaxToken
closeParenToken SyntaxToken
options RegexPatternOptions

Returns

RegexCalloutSyntax

CapturingGroup(SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)

Syntax.g.cs

Builds a RegexCapturingGroupSyntax from its parts.

public static RegexCapturingGroupSyntax CapturingGroup(SyntaxToken openParenToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions, int number)

Parameters

openParenToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions
number int

Returns

RegexCapturingGroupSyntax

CharacterClass overloads

CharacterClass(SyntaxToken, SyntaxToken, SyntaxList<RegexSyntaxNode>, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCharacterClassSyntax from its parts.

public static RegexCharacterClassSyntax CharacterClass(SyntaxToken openBracketToken, SyntaxToken caretToken, SyntaxList<RegexSyntaxNode> members, SyntaxToken closeBracketToken, RegexPatternOptions options)
Parameters
openBracketToken SyntaxToken
caretToken SyntaxToken
members SyntaxList<RegexSyntaxNode>
closeBracketToken SyntaxToken
options RegexPatternOptions
Returns

RegexCharacterClassSyntax

CharacterClass(bool, IEnumerable<RegexSyntaxNode>)

SyntaxFactory.cs

Creates a character class from its members.

public static RegexCharacterClassSyntax CharacterClass(bool negated, params IEnumerable<RegexSyntaxNode> members)
Parameters
negated bool
members IEnumerable<RegexSyntaxNode>
Returns

RegexCharacterClassSyntax

Exceptions
ArgumentNullException
members is null.

CharacterClassEscape(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCharacterClassEscapeSyntax from its parts.

public static RegexCharacterClassEscapeSyntax CharacterClassEscape(SyntaxToken escapeToken, RegexPatternOptions options)

CharacterEscape(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCharacterEscapeSyntax from its parts.

public static RegexCharacterEscapeSyntax CharacterEscape(SyntaxToken escapeToken, RegexPatternOptions options)

CharacterRange overloads

CharacterRange(RegexSyntaxNode, SyntaxToken, RegexSyntaxNode?, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCharacterRangeSyntax from its parts.

public static RegexCharacterRangeSyntax CharacterRange(RegexSyntaxNode start, SyntaxToken hyphenToken, RegexSyntaxNode? end, RegexPatternOptions options)

CharacterRange(char, char, RegexDialect)

SyntaxFactory.cs

Creates a range such as a-z, for use inside a character class.

public static RegexCharacterRangeSyntax CharacterRange(char first, char last, RegexDialect dialect)
Parameters
first char
last char
dialect RegexDialect
Returns

RegexCharacterRangeSyntax

Exceptions
ArgumentNullException
dialect is null.
ArgumentOutOfRangeException
last is below first.

ClassEscape(char)

SyntaxFactory.cs

Creates a shorthand class escape such as \d.

public static RegexCharacterClassEscapeSyntax ClassEscape(char letter)

Parameters

letter char

Returns

RegexCharacterClassEscapeSyntax

ClassSetOperation(SeparatedSyntaxList<RegexSyntaxNode>, RegexPatternOptions)

Syntax.g.cs

ClassStringLiteral(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexClassStringLiteralSyntax from its parts.

public static RegexClassStringLiteralSyntax ClassStringLiteral(SyntaxToken startToken, SyntaxToken textToken, SyntaxToken closeBraceToken, RegexPatternOptions options)

Parameters

startToken SyntaxToken
textToken SyntaxToken
closeBraceToken SyntaxToken
options RegexPatternOptions

Returns

RegexClassStringLiteralSyntax

ClassSubtraction(SyntaxToken, RegexCharacterClassSyntax, RegexPatternOptions)

Syntax.g.cs

Builds a RegexClassSubtractionSyntax from its parts.

public static RegexClassSubtractionSyntax ClassSubtraction(SyntaxToken hyphenToken, RegexCharacterClassSyntax subtracted, RegexPatternOptions options)

CollatingElement(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexCollatingElementSyntax from its parts.

public static RegexCollatingElementSyntax CollatingElement(SyntaxToken startToken, SyntaxToken textToken, SyntaxToken endToken, RegexPatternOptions options)

Parameters

startToken SyntaxToken
textToken SyntaxToken
endToken SyntaxToken
options RegexPatternOptions

Returns

RegexCollatingElementSyntax

Conditional(SyntaxToken, SyntaxToken, RegexSyntaxNode?, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexConditionalSyntax from its parts.

public static RegexConditionalSyntax Conditional(SyntaxToken openParenToken, SyntaxToken questionToken, RegexSyntaxNode? condition, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)

Parameters

openParenToken SyntaxToken
questionToken SyntaxToken
condition RegexSyntaxNode?
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions

Returns

RegexConditionalSyntax

ConditionalReference(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexConditionalReferenceSyntax from its parts.

public static RegexConditionalReferenceSyntax ConditionalReference(SyntaxToken openParenToken, SyntaxToken nameToken, SyntaxToken closeParenToken, RegexPatternOptions options)

Parameters

openParenToken SyntaxToken
nameToken SyntaxToken
closeParenToken SyntaxToken
options RegexPatternOptions

Returns

RegexConditionalReferenceSyntax

Group(RegexAlternationSyntax, int)

SyntaxFactory.cs

Wraps alternation in a capturing group.

public static RegexCapturingGroupSyntax Group(RegexAlternationSyntax alternation, int number = 0)

Parameters

alternation RegexAlternationSyntax
number int

Returns

RegexCapturingGroupSyntax

Exceptions

ArgumentNullException
alternation is null.

InlineOptions(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexInlineOptionsSyntax from its parts.

public static RegexInlineOptionsSyntax InlineOptions(SyntaxToken openParenToken, SyntaxToken questionToken, SyntaxToken optionsToken, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions appliedOptions)

Parameters

openParenToken SyntaxToken
questionToken SyntaxToken
optionsToken SyntaxToken
closeParenToken SyntaxToken
options RegexPatternOptions
appliedOptions RegexPatternOptions

Returns

RegexInlineOptionsSyntax

Literal overloads

Literal(SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexLiteralSyntax from its parts.

public static RegexLiteralSyntax Literal(SyntaxToken literalToken, RegexPatternOptions options)
Parameters
literalToken SyntaxToken
options RegexPatternOptions
Returns

RegexLiteralSyntax

Literal(char, RegexDialect)

SyntaxFactory.cs

Creates a literal that matches value exactly, escaping it where the dialect needs it.

public static RegexAtomSyntax Literal(char value, RegexDialect dialect)
Parameters
value char
dialect RegexDialect
Returns

RegexAtomSyntax

Exceptions
ArgumentNullException
dialect is null.

LiteralText(string, RegexDialect)

SyntaxFactory.cs

Creates a sequence that matches value literally, escaping every character that needs it.

public static RegexSequenceSyntax LiteralText(string value, RegexDialect dialect)

Parameters

value string
dialect RegexDialect

Returns

RegexSequenceSyntax

Exceptions

ArgumentNullException
value or dialect is null.

Lookaround(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexLookaroundSyntax from its parts.

public static RegexLookaroundSyntax Lookaround(SyntaxToken openParenToken, SyntaxToken groupKindToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)

Parameters

openParenToken SyntaxToken
groupKindToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions

Returns

RegexLookaroundSyntax

MissingToken(SyntaxKind)

SyntaxFactory.cs

Creates a zero-width token standing in for one a pattern does not have.

public static SyntaxToken MissingToken(SyntaxKind kind)

Parameters

kind SyntaxKind

Returns

SyntaxToken

NamedBackreference(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexNamedBackreferenceSyntax from its parts.

public static RegexNamedBackreferenceSyntax NamedBackreference(SyntaxToken startToken, SyntaxToken openNameToken, SyntaxToken nameToken, SyntaxToken closeNameToken, RegexPatternOptions options)

Parameters

startToken SyntaxToken
openNameToken SyntaxToken
nameToken SyntaxToken
closeNameToken SyntaxToken
options RegexPatternOptions

Returns

RegexNamedBackreferenceSyntax

NamedGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions, int)

Syntax.g.cs

Builds a RegexNamedGroupSyntax from its parts.

public static RegexNamedGroupSyntax NamedGroup(SyntaxToken openParenToken, SyntaxToken groupKindToken, SyntaxToken nameToken, SyntaxToken closeNameToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions, int number)

Parameters

openParenToken SyntaxToken
groupKindToken SyntaxToken
nameToken SyntaxToken
closeNameToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions
number int

Returns

RegexNamedGroupSyntax

NonCapturingGroup overloads

NonCapturingGroup(RegexAlternationSyntax)

SyntaxFactory.cs

Wraps alternation in a non-capturing group, (?:…).

public static RegexNonCapturingGroupSyntax NonCapturingGroup(RegexAlternationSyntax alternation)
Parameters
alternation RegexAlternationSyntax
Returns

RegexNonCapturingGroupSyntax

Exceptions
ArgumentNullException
alternation is null.

NonCapturingGroup(SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexNonCapturingGroupSyntax from its parts.

public static RegexNonCapturingGroupSyntax NonCapturingGroup(SyntaxToken openParenToken, SyntaxToken groupKindToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)
Parameters
openParenToken SyntaxToken
groupKindToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions
Returns

RegexNonCapturingGroupSyntax

OptionsGroup(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexAlternationSyntax, SyntaxToken, RegexPatternOptions, RegexPatternOptions)

Syntax.g.cs

Builds a RegexOptionsGroupSyntax from its parts.

public static RegexOptionsGroupSyntax OptionsGroup(SyntaxToken openParenToken, SyntaxToken questionToken, SyntaxToken optionsToken, SyntaxToken colonToken, RegexAlternationSyntax alternation, SyntaxToken closeParenToken, RegexPatternOptions options, RegexPatternOptions innerOptions)

Parameters

openParenToken SyntaxToken
questionToken SyntaxToken
optionsToken SyntaxToken
colonToken SyntaxToken
alternation RegexAlternationSyntax
closeParenToken SyntaxToken
options RegexPatternOptions
innerOptions RegexPatternOptions

Returns

RegexOptionsGroupSyntax

Pattern(SyntaxToken, RegexAlternationSyntax, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexPatternSyntax from its parts.

public static RegexPatternSyntax Pattern(SyntaxToken openSlashToken, RegexAlternationSyntax alternation, SyntaxToken closeSlashToken, SyntaxToken flagsToken, SyntaxToken trailingToken, SyntaxToken endOfPatternToken, RegexPatternOptions options)

Parameters

openSlashToken SyntaxToken
alternation RegexAlternationSyntax
closeSlashToken SyntaxToken
flagsToken SyntaxToken
trailingToken SyntaxToken
endOfPatternToken SyntaxToken
options RegexPatternOptions

Returns

RegexPatternSyntax

PosixCharacterClass(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexPosixCharacterClassSyntax from its parts.

public static RegexPosixCharacterClassSyntax PosixCharacterClass(SyntaxToken startToken, SyntaxToken nameToken, SyntaxToken endToken, RegexPatternOptions options)

Parameters

startToken SyntaxToken
nameToken SyntaxToken
endToken SyntaxToken
options RegexPatternOptions

Returns

RegexPosixCharacterClassSyntax

Quantified overloads

Quantified(RegexAtomSyntax, char, RegexQuantifierMode)

SyntaxFactory.cs

Applies *, +, or ? to atom.

public static RegexQuantifiedSyntax Quantified(RegexAtomSyntax atom, char quantifier, RegexQuantifierMode mode = RegexQuantifierMode.Greedy)
Parameters
atom RegexAtomSyntax
quantifier char
mode RegexQuantifierMode
Returns

RegexQuantifiedSyntax

Exceptions
ArgumentNullException
atom is null.
ArgumentOutOfRangeException
quantifier is not one of the three operators.

Quantified(RegexAtomSyntax, int, int?, RegexQuantifierMode)

SyntaxFactory.cs

Applies a {n,m} bound to atom. Pass null for an unbounded maximum.

public static RegexQuantifiedSyntax Quantified(RegexAtomSyntax atom, int min, int? max, RegexQuantifierMode mode = RegexQuantifierMode.Greedy)
Parameters
atom RegexAtomSyntax
min int
max int?
mode RegexQuantifierMode
Returns

RegexQuantifiedSyntax

Exceptions
ArgumentNullException
atom is null.
ArgumentOutOfRangeException
min is negative, or max is below it.

Quantified(RegexTermSyntax, RegexQuantifierSyntax, RegexPatternOptions)

Syntax.g.cs

Builds a RegexQuantifiedSyntax from its parts.

public static RegexQuantifiedSyntax Quantified(RegexTermSyntax term, RegexQuantifierSyntax quantifier, RegexPatternOptions options)

QuotedLiteral(SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexQuotedLiteralSyntax from its parts.

public static RegexQuotedLiteralSyntax QuotedLiteral(SyntaxToken startToken, SyntaxToken textToken, SyntaxToken endToken, RegexPatternOptions options)

Parameters

startToken SyntaxToken
textToken SyntaxToken
endToken SyntaxToken
options RegexPatternOptions

Returns

RegexQuotedLiteralSyntax

RangeQuantifier(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexRangeQuantifierSyntax from its parts.

public static RegexRangeQuantifierSyntax RangeQuantifier(SyntaxToken openBraceToken, SyntaxToken minToken, SyntaxToken commaToken, SyntaxToken maxToken, SyntaxToken closeBraceToken, SyntaxToken modifierToken, RegexPatternOptions options)

Parameters

openBraceToken SyntaxToken
minToken SyntaxToken
commaToken SyntaxToken
maxToken SyntaxToken
closeBraceToken SyntaxToken
modifierToken SyntaxToken
options RegexPatternOptions

Returns

RegexRangeQuantifierSyntax

Recursion(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexRecursionSyntax from its parts.

public static RegexRecursionSyntax Recursion(SyntaxToken openParenToken, SyntaxToken questionToken, SyntaxToken targetToken, SyntaxToken closeParenToken, RegexPatternOptions options)

Parameters

openParenToken SyntaxToken
questionToken SyntaxToken
targetToken SyntaxToken
closeParenToken SyntaxToken
options RegexPatternOptions

Returns

RegexRecursionSyntax

Sequence overloads

Sequence(SyntaxList<RegexTermSyntax>, RegexPatternOptions)

Syntax.g.cs

Builds a RegexSequenceSyntax from its parts.

public static RegexSequenceSyntax Sequence(SyntaxList<RegexTermSyntax> terms, RegexPatternOptions options)

Sequence(IEnumerable<RegexTermSyntax>)

SyntaxFactory.cs

Creates a sequence from its terms.

public static RegexSequenceSyntax Sequence(params IEnumerable<RegexTermSyntax> terms)
Parameters
terms IEnumerable<RegexTermSyntax>
Returns

RegexSequenceSyntax

Exceptions
ArgumentNullException
terms is null.

SimpleQuantifier(SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexSimpleQuantifierSyntax from its parts.

public static RegexSimpleQuantifierSyntax SimpleQuantifier(SyntaxToken operatorToken, SyntaxToken modifierToken, RegexPatternOptions options)

Parameters

operatorToken SyntaxToken
modifierToken SyntaxToken
options RegexPatternOptions

Returns

RegexSimpleQuantifierSyntax

SkippedText(SyntaxTokenList, RegexPatternOptions)

Syntax.g.cs

Builds a RegexSkippedTextSyntax from its parts.

public static RegexSkippedTextSyntax SkippedText(SyntaxTokenList tokens, RegexPatternOptions options)

Token(SyntaxKind, string, string?)

SyntaxFactory.cs

Creates a token of the given kind and text.

public static SyntaxToken Token(SyntaxKind kind, string text, string? valueText = null)

Parameters

kind SyntaxKind
text string
valueText string?

Returns

SyntaxToken

Exceptions

ArgumentNullException
text is null.

Trivia(SyntaxKind, string)

SyntaxFactory.cs

Creates trivia of the given kind and text.

public static SyntaxTrivia Trivia(SyntaxKind kind, string text)

Parameters

kind SyntaxKind
text string

Returns

SyntaxTrivia

Exceptions

ArgumentNullException
text is null.

UnicodeCategory(SyntaxToken, SyntaxToken, SyntaxToken, SyntaxToken, RegexPatternOptions)

Syntax.g.cs

Builds a RegexUnicodeCategorySyntax from its parts.

public static RegexUnicodeCategorySyntax UnicodeCategory(SyntaxToken categoryStartToken, SyntaxToken openBraceToken, SyntaxToken nameToken, SyntaxToken closeBraceToken, RegexPatternOptions options)

Parameters

categoryStartToken SyntaxToken
openBraceToken SyntaxToken
nameToken SyntaxToken
closeBraceToken SyntaxToken
options RegexPatternOptions

Returns

RegexUnicodeCategorySyntax