Codeunit 3960 "Regex"
System Application · System.Utilities
Across versions
- BC23-30present
Neighbourhood 33 connected objects and pages
System Application · System.Utilities · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Access | Public |
Procedures
Regex(Pattern: Text): Initializes a new instance of the Regex class for the specified regular expression.Regex(Pattern: Text; var RegexOptions: Record "Regex Options"): Initializes a new instance of the Regex class for the specified regular expression, with options that modify the pattern.GetCacheSize(): Integer: Gets the maximum number of entries in the current static cache of compiled regular expressions.SetCacheSize(CacheSize: Integer): Sets the maximum number of entries in the current static cache of compiled regular expressions.GetGroupNames(var GroupNames: List of [Text]): Gets an array of capturing group names for the regular expression.GetGroupNumbers(var GroupNumbers: List of [Integer]): Gets an array of capturing group numbers that correspond to group names in an array.GroupNameFromNumber(Number: Integer): Text: Gets the group name that corresponds to the specified group number.GroupNumberFromName(Name: Text): Integer: Gets the group number that corresponds to the specified group name.IsMatch(Input: Text; Pattern: Text; StartAt: Integer): Boolean: Indicates whether the regular expression finds a match in the input string, beginning at the specified starting position in the string.IsMatch(Input: Text; StartAt: Integer): Boolean: Indicates whether the regular expression specified in the Regex constructor finds a match in the input string, beginning at the specified starting position in the string.IsMatch(Input: Text; Pattern: Text; StartAt: Integer; var RegexOptions: Record "Regex Options"): Boolean: Indicates whether the regular expression finds a match in the input string, beginning at the specified starting position in the string.IsMatch(Input: Text; Pattern: Text): Boolean: Indicates whether the regular expression finds a match in the input string.IsMatch(Input: Text): Boolean: Indicates whether the regular expression specified in the Regex constructor finds a match in the input string.IsMatch(Input: Text; Pattern: Text; var RegexOptions: Record "Regex Options"): Boolean: Indicates whether the specified regular expression finds a match in the specified input string, using the specified matching options.Match(Input: Text; Pattern: Text; StartAt: Integer; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression, beginning at the specified starting position in the string.Match(Input: Text; StartAt: Integer; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression specified in the Regex constructor, beginning at the specified starting position in the string.Match(Input: Text; Pattern: Text; StartAt: Integer; var RegexOptions: Record "Regex Options"; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression, beginning at the specified starting position in the string.Match(Input: Text; Pattern: Text; StartAt: Integer; Length: Integer; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression, beginning at the specified starting position and searching only the specified number of characters.Match(Input: Text; StartAt: Integer; Length: Integer; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression specified in the Regex constructor, beginning at the specified starting position and searching only the specified number of characters.Match(Input: Text; Pattern: Text; StartAt: Integer; Length: Integer; var RegexOptions: Record "Regex Options"; var Matches: Record Matches): Searches the input string for the first occurrence of a regular expression, beginning at the specified starting position and searching only the specified number of characters.Match(Input: Text; Pattern: Text; var Matches: Record Matches): Searches the input string for the first occurrence of the specified regular expression, using the specified matching options.Match(Input: Text; var Matches: Record Matches): Searches the input string for the first occurrence of the specified regular expression specified in the Regex constructor, using the specified matching options.Match(Input: Text; Pattern: Text; var RegexOptions: Record "Regex Options"; var Matches: Record Matches): Searches the input string for the first occurrence of the specified regular expression, using the specified matching options.Replace(Input: Text; Pattern: Text; Replacement: Text; Count: Integer): Text: Replaces strings that match a regular expression pattern with a specified replacement string.Replace(Input: Text; Replacement: Text; Count: Integer): Text: Replaces strings that match a regular expression pattern specified in the Regex constructor with a specified replacement string.Replace(Input: Text; Pattern: Text; Replacement: Text; Count: Integer; var RegexOptions: Record "Regex Options"): Text: Replaces strings that match a regular expression pattern with a specified replacement string.Replace(Input: Text; Pattern: Text; Replacement: Text; Count: Integer; StartAt: Integer): Text: In a specified input substring, replaces a specified maximum number of strings that match a regular expression pattern with a specified replacement string.Replace(Input: Text; Replacement: Text; Count: Integer; StartAt: Integer): Text: In a specified input substring, replaces a specified maximum number of strings that match a regular expression pattern specified in the Regex constructor with a specified replacement string.Replace(Input: Text; Pattern: Text; Replacement: Text; Count: Integer; StartAt: Integer; var RegexOptions: Record "Regex Options"): Text: In a specified input substring, replaces a specified maximum number of strings that match a regular expression pattern with a specified replacement string.Replace(Input: Text; Pattern: Text; Replacement: Text): Text: Replaces all strings that match a specified regular expression with a specified replacement string.Replace(Input: Text; Replacement: Text): Text: Replaces all strings that match a specified regular expression specified in the Regex constructor with a specified replacement string.Replace(Input: Text; Pattern: Text; Replacement: Text; var RegexOptions: Record "Regex Options"): Text: Replaces all strings that match a specified regular expression with a specified replacement string. Specified options modify the matching operation.Split(Input: Text; Pattern: Text; Count: Integer; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern.Split(Input: Text; Count: Integer; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern specified in the Regex constructor.Split(Input: Text; Pattern: Text; Count: Integer; var RegexOptions: Record "Regex Options"; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern.Split(Input: Text; Pattern: Text; Count: Integer; StartAt: Integer; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern. The search for the pattern starts at a specified character position in the input string.Split(Input: Text; Count: Integer; StartAt: Integer; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern specified in the Regex constructor. The search for the pattern starts at a specified character position in the input string.Split(Input: Text; Pattern: Text; Count: Integer; StartAt: Integer; var RegexOptions: Record "Regex Options"; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern. The search for the pattern starts at a specified character position in the input string.Split(Input: Text; Pattern: Text; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern. Specified options modify the matching operation.Split(Input: Text; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern specified in the Regex constructor. Specified options modify the matching operation.Split(Input: Text; Pattern: Text; var RegexOptions: Record "Regex Options"; var Array: List of [Text]): Splits an input string a specified maximum number of times into an array of substrings, at the positions defined by a regular expression pattern. Specified options modify the matching operation.GetHashCode(): Integer: Serves as the default hash function.Escape(String: Text): Text: Escapes a minimal set of characters (, *, +, ?, |, {, [, (,), ^, $, ., #, and white space) by replacing them with their escape codes.Unescape(String: Text): Text: Converts any escaped characters in the input string.Groups(var MatchesRec: Record Matches; var GroupsRec: Record Groups): Get the Groups for one particular Match.Captures(var GroupsRec: Record Groups; var CapturesRec: Record Captures): Get the Captures for one particular Group.MatchResult(var Matches: Record Matches; Replacement: Text): Text: Returns the expansion of the specified replacement pattern.
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 3961 “Regex Impl.” (17 calls:
Captures → Captures,Escape → Escape,GetCacheSize → GetCacheSize, …)
Called by
- Codeunit 20416 “Qlty. Expression Mgmt.” (4 calls:
EvaluateBuiltInTableLookups → Groups,EvaluateBuiltInTableLookups → Match,EvaluateFirstStringOnlyFunctions → Groups, …) - Codeunit 2012 “Entity Text Impl.” (2 calls:
IsGoodCompletion → Match,SetText → Replace) - Codeunit 20403 “Qlty. Filter Helpers” (2 calls:
DeserializeFilterIntoItemAttributesBuffer → Groups,DeserializeFilterIntoItemAttributesBuffer → Match) - Codeunit 5069 “Word Template Interactions” (2 calls:
GetAllValuesFromHtmlTable → Groups,GetAllValuesFromHtmlTable → Match) - Codeunit 10 “Type Helper” (1 call:
IsPhoneNumber → IsMatch) - Codeunit 102 “Import Consolidation from API” (1 call:
GetAADTenantIdFromBCUrl → Match) - Codeunit 1034 “Job Planning Line - Calendar” (1 call:
GetHtmlDescription → Replace) - Codeunit 1203 “Import XML File to Data Exch.” (1 call:
EscapeMissingNamespacePrefix → IsMatch) - Codeunit 1249 “Transform. Rule - Replace” (1 call:
RegularExpressionReplace → Replace) - Codeunit 1294 “OCR Service Mgt.” (1 call:
GetDocuments → IsMatch) - Codeunit 1890 “Reminder Communication” (1 call:
StripHtmlTags → Replace) - Codeunit 20353 “Connectivity Apps Logo Mgt.” (1 call:
GetAppURLParametersFromAppSourceURL → Match) - Codeunit 3060 “Uri” (1 call:
IsValidURIPattern → IsMatch) - Codeunit 4513 “SMTP Connector Impl.” (1 call:
GetSmtpErrorCodeFromResponse → IsMatch) - Codeunit 47 “StringConversionManagement” (1 call:
RemoveNonAlphaNumericCharacters → Replace) - Codeunit 4751 “Recommended Apps Impl.” (1 call:
GetAppURLParametersFromAppSourceURL → Match) - Codeunit 560 “CrossIntercompany Connector” (1 call:
IsValidTenantIdentifier → IsMatch) - Codeunit 8351 “MCP Config Implementation” (1 call:
EncodeForMCPHeaderIfNonAscii → IsMatch) - Codeunit 9204 “IDA 1D Code39 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9205 “IDA 1D Code93 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9206 “IDA 1D Code128 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9207 “IDA 1D EAN8 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9208 “IDA 1D EAN13 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9209 “IDA 1D I2of5 Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9210 “IDA 1D MSI Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9211 “IDA 1D Postnet Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9212 “IDA 1D UPCA Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9213 “IDA 1D UPCE Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9214 “IDA 1D Codabar Encoder” (1 call:
IsValidInput → IsMatch) - Codeunit 9988 “Word Template Impl.” (1 call:
GetTemplateName → Replace) - Table 2020 “Image Analysis Setup” (1 call:
EndsInAnalyze → IsMatch) - Table 5392 “CRM Annotation Coupling” (1 call:
ExtractNoteText → Replace)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Regex"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.