Class RegexPattern.Groups
OptimaJet.Workflow.Core.CodeActions.RegexPattern.Groups
Contains named groups and fragments used to compose placeholder-matching regular-expression patterns.
Namespace: OptimaJet.Workflow.Core.CodeActions
public static class RegexPattern.GroupsFields
public const string ParameterName = "(?<ParameterName>(?(MaybeWithBracket)[\\w ]+(\\.[\\w ]+)*|\\w+(\\.\\w+)*))" #Gets a named-group fragment that captures the parameter name part.
Example
In input like
@document.Employee.Amount:format or @(document.Employee.Amount:format), this fragment captures document.Employee.Amount as a named group.public const string FindParameter = "(?<FindParameter>(?<MaybeWithBracket>@\\()|(?<WithoutBracket>(?<=[^\\w]|^|\\\\n)@))" #Gets a named-group fragment that detects a parameter prefix.
Remarks
This fragment matches either
@( from RegexPattern.Groups.MaybeWithBracket or an unparenthesized @ from RegexPattern.Groups.WithoutBracket, and stores the result as a named group.public const string MaybeWithBracket = "(?<MaybeWithBracket>@\\()" #Matches the opening bracketed prefix sequence
@(.public const string EndWithBracketIfExists = "(?<EndWithBracketIfExists>(?(MaybeWithBracket)\\)|))" #Conditionally matches a closing parenthesis when
@( was matched.public const string WithoutBracket = "(?<WithoutBracket>(?<=[^\\w]|^|\\\\n)@)" #Matches an unparenthesized
@ marker at the start of the input or when it is not immediately preceded by a word character.public const string MaybeExistsFormat = "((?<MaybeExistsFormat>:(?!\\s*@))|())" #Captures an optional
: delimiter that begins a format specifier.Remarks
The delimiter is not captured when it is followed by optional whitespace and another
@ marker. An empty format after the delimiter is permitted.public const string Format = "(?<Format>(?(MaybeExistsFormat)(?(MaybeWithBracket)([^\"'()]|(?<=\\\\)(\\(|\\)|\\\"|'))*|[^\\(\\)\\{\\}\\[\\]\\s\\\"']*)|))" #Gets a named-group fragment that captures the format value when it is present.
Remarks
This fragment is applied only when RegexPattern.Groups.MaybeExistsFormat is present.
public const string MaybeWithQuotes = "(?:((?<MaybeWithSingleQuote>\\')|())|((?<MaybeWithDoubleQuote>\\\")|()))" #Captures an optional opening single or double quote before the RegexPattern.Parameter pattern.
public const string EndWithQuotesIfExists = "(?<EndWithQuotesIfExists>(?(MaybeWithDoubleQuote)\\\"|(?<EndWithQuotesIfExists>(?(MaybeWithSingleQuote)\\'|))))" #Captures an optional closing quote that matches the quote captured by RegexPattern.Groups.MaybeWithQuotes.
Remarks
Update group names and related pattern fragments together to keep references in consuming expressions valid.