RegexOptions 枚举
提供用于设置正则表达式选项的枚举值。此枚举有一个 FlagsAttribute 属性,允许其成员值按位组合
说明
Compiled:指定将正则表达式编译为程序集。这会产生更快的执行速度,但会增加启动时间。
CultureInvariant:指定忽略语言中的区域性差异。有关更多信息,请参见 在 RegularExpressions 命名空间中执行不区分区域性的操作。
ECMAScript:为表达式启用符合 ECMAScript 的行为。该值只能与 IgnoreCase、Multiline 和 Compiled 值一起使用。该值与其他任何值一起使用均将导致异常。
ExplicitCapture:指定有效的捕获仅为形式为 (?<name>...) 的显式命名或编号的组。这使未命名的圆括号可以充当非捕获组,并且不会使表达式的语法 (?:...) 显得笨拙。
IgnoreCase:指定不区分大小写的匹配。
IgnorePatternWhitespace:消除模式中的非转义空白并启用由 # 标记的注释。但是,IgnorePatternWhitespace 值不会影响或消除字符类中的空白。
Multiline:多行模式。更改 ^ 和 $ 的含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。
None:指定不设置选项。
RightToLeft:指定搜索从右向左而不是从左向右进行。
Singleline:指定单行模式。更改点 (.) 的含义,使它与每一个字符匹配(而不是与除 /n 之外的每个字符匹配)。
示例
下面的示例演示该枚举在 Regex 实例中的应用。
// Define a regular expression for repeated words.
Regex rx = new Regex(@"/b(?<word>/w+)/s+(/k<word>)/b",
RegexOptions.Compiled | RegexOptions.IgnoreCase);