处理选项
上面介绍了几个选项如忽略大小
写,处理多行等,这些选项能用来改 变处理正则表达式的方式。下面
是.Net中常用的正则表达式选项:
表6.常用的处理选项
在C#中,你可以使用Regex(String, RegexOptions)构造函数来设置正则表达式 的处理选项。如:Regex regex = new Regex
(@"\ba\w{6}\b", RegexOptions.IgnoreCase);
名称 说明 |
|
IgnoreCase(忽略大小写) |
匹配时不区分 大小写。 |
Multiline(多行模式) |
更改 ^ 和 $ 的含 义,使它们分 别在任意一行 的行首和行尾 匹配,而不仅 仅在整个字符 串的开头和结 尾匹配。(在此 模式下, $ 的精 确含意是:匹配 \n之前的位置以 及字符串结束 前的位置.) |
Singleline(单行模式) |
更改 . 的含义, 使它与每一个 字符匹配(包 括换行符\n)。 |
IgnorePatternWhitespace (忽略空白) |
忽略表达式中 的非转义空白 并启用由 # 标 记的注释。 |
ExplicitCapture(显式捕 获) |
仅捕获已被显 式命名的组。 |
一个经常被问到的问题是:是不是只能同时使用多行模式和单行模式中的一种? 答案是:不是。这两个选项之间没有任何关系,除了它们的名字比较相似(以至于让 人感到疑惑)以外。