本文由机器翻译。若要查看英语原文,请勾选“英语”复选框。 也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语

Regex 构造函数 (String, RegexOptions)

 

新实例初始化 Regex 为指定的正则表达式,用修改模式的选项。

命名空间:   System.Text.RegularExpressions
程序集:  System(位于 System.dll)

public Regex(
	string pattern,
	RegexOptions options
)

参数

pattern
Type: System.String

要匹配的正则表达式模式。

options
Type: System.Text.RegularExpressions.RegexOptions

修改正则表达式的枚举值的按位组合。

Exception Condition
ArgumentException

出现正则表达式分析错误。

ArgumentNullException

patternnull

ArgumentOutOfRangeException

options 包含无效的标志。

pattern 参数包含以符号方式描述了要匹配的字符串的正则表达式语言元素。 有关正则表达式的详细信息,请参阅 .NET Framework 正则表达式正则表达式语言 - 快速参考 主题。

一个 Regex 对象是不可变的这意味着,它可以仅用于创建它时定义的匹配参数。 但是,可能没有正在重新编译的情况下使用任意数量的时间。

调用函数说明:

此构造函数创建 Regex 使用在其中创建的应用程序域的默认超时值的对象。 如果不为应用程序域中,定义了超时值 Regex 对象使用的值 InfiniteMatchTimeout, ,这将阻止该操作超时。 用于创建建议的构造函数 Regex 对象是 Regex.Regex(String, RegexOptions, TimeSpan), ,该对话框允许您设置的超时间隔。

下面的示例演示如何使用此构造函数来实例化正则表达式匹配以字母开头的任何单词"a"或"t"。

using System;
using System.Text.RegularExpressions;

public class Example
{
   public static void Main()
   {
      string pattern = @"\b[at]\w+";
      RegexOptions options = RegexOptions.IgnoreCase | RegexOptions.Compiled;
      string text = "The threaded application ate up the thread pool as it executed.";
      MatchCollection matches;

      Regex optionRegex = new Regex(pattern, options);
      Console.WriteLine("Parsing '{0}' with options {1}:", text, options.ToString());
      // Get matches of pattern in text
      matches = optionRegex.Matches(text);
      // Iterate matches
      for (int ctr = 0; ctr < matches.Count; ctr++)
         Console.WriteLine("{0}. {1}", ctr, matches[ctr].Value);
   }
}
// The example displays the following output:
//    Parsing 'The threaded application ate up the thread pool as it executed.'
//        with options IgnoreCase, Compiled:
//    0. The
//    1. threaded
//    2. application
//    3. ate
//    4. the
//    5. thread
//    6. as

请注意匹配集合,包括开头的单词"The",该文本因为 options 参数定义不区分大小写的比较。

通用 Windows 平台
自 8 起可用
.NET Framework
自 1.1 起可用
可移植类库
可移植 .NET 平台 中受支持
Silverlight
自 2.0 起可用
Windows Phone Silverlight
自 7.0 起可用
Windows Phone
自 8.1 起可用
返回页首
显示: