Regex Constructor (String, RegexOptions)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Initializes and compiles a new instance of the Regex class for the specified regular expression, with options that modify the pattern.
Namespace: System.Text.RegularExpressions
Assembly: System (in System.dll)
Syntax
'Declaration
Public Sub New ( _
pattern As String, _
options As RegexOptions _
)
public Regex(
string pattern,
RegexOptions options
)
Parameters
- pattern
Type: System.String
The regular expression pattern to match.
- options
Type: System.Text.RegularExpressions.RegexOptions
A bitwise combination of the enumeration values.
Exceptions
Exception | Condition |
---|---|
ArgumentException | A regular expression parsing error occurred. |
ArgumentNullException | pattern is nulla null reference (Nothing in Visual Basic). |
ArgumentOutOfRangeException | options contains an invalid flag. |
Remarks
The pattern parameter consists of various regular expression language elements that symbolically describe the string to match. For more information about regular expressions, see the Regular Expressions as a Language and Regular Expression Language Elements topics in the .NET Framework documentation.
A Regex object is immutable, which means that it can be used only for the match parameters defined when it is created. It can be used any number of times without being recompiled, however.
Examples
The following example illustrates how to use this constructor to instantiate a regular expression that matches any word that begins with the letters "a" or "t".
Dim pattern As String = "\b[at]\w+"
Dim options As RegexOptions = RegexOptions.IgnoreCase
Dim text As String = "The threaded application ate up the thread pool as it executed."
Dim matches As MatchCollection
Dim optionRegex As New Regex(pattern, options)
outputBlock.Text &= String.Format("Parsing '{0}' with options {1}:", text, options.ToString()) & vbCrLf
' Get matches of pattern in text
matches = optionRegex.Matches(text)
' Iterate matches
For ctr As Integer = 0 To matches.Count - 1
outputBlock.Text &= String.Format("{0}. {1}", ctr, matches(ctr).Value) & vbCrLf
Next
string pattern = @"\b[at]\w+";
RegexOptions options = RegexOptions.IgnoreCase;
string text = "The threaded application ate up the thread pool as it executed.";
MatchCollection matches;
Regex optionRegex = new Regex(pattern, options);
outputBlock.Text += String.Format("Parsing '{0}' with options {1}:", text, options.ToString()) + "\n";
// Get matches of pattern in text
matches = optionRegex.Matches(text);
// Iterate matches
for (int ctr = 1; ctr <= matches.Count; ctr++)
outputBlock.Text += String.Format("{0}. {1}", ctr, matches[ctr - 1].Value) + "\n";
Note that the match collection includes the word "The" that begins the text because the options parameter has defined case-insensitive comparisons.
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.