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.

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.