正 文

.NET把Windows开发者引入到正则表达式的世界


www.7dspace.com  更新日期:2005-11-28 2:27:22  七度空间


正则表达式选项

你可以利用各种选项来更改正则表达式的行为。有一个选项用来指定对应正则表达式的工作方式——单行还是多行。其默认值为单行工作方式,一般你在处理文本文件时需要这种方式。多行模式可以让你把文本中的所有行当作单一对象来读取。从数据库中导出文本文件(在特定行中用逗号、制表符或者引号来表明字段)的场合下用多行模式是适宜的。表B列出了.NET中常常用到的若干选项。

表B

选项

描述

None

表明没有设定选项。

IgnoreCase

表明匹配时大小写不敏感。

Multiline

指定多行方式
改变^和$的含义,这样它们匹配任何行的开头和结尾,而不是整个字符串的开头和结尾。

ExplicitCapture

指定有效捕获是明确命名的或者按(?…)这种方式编号的组
这允许圆括号可以充当非捕获(noncapturing)组的作用而无需使用笨拙的语法(?:…)。

Compiled

指明该正则表达式将会编译到汇编(assembly)中去
为正则表达式产生微软中间语言(Microsoft intermediate language ,MSIL)代码;使得执行速度更快(但是付出了开始时间的代价)。

Singleline

指定单行方式
改变句号字符(.)的意义,这样它可以匹配任何单字符(而不是除\n之外的所有字符)。

IgnorePatternWhitespace

指定该模式去处了所有的保有(unescaped)白空格,并且使得注释以数字符(#)开头。
(参见Character Escapes 列出的保有白空格字符。)注意,字符类从来没有去处过白空格。

RightToLeft

指明搜索是自右向左,而不是自左向右的
带有这个选项的正则表达式移向起点的左侧而不是右侧(因此,起点应该指定为字符串的末尾而不是开头)。为了防止正则表达式陷入无限循环之中,这个选项不能在中间(midstream)指定。不过,lookbehind构造(?<) 可以防止类似的事情发生,它可以在子模式中使用。

ECMAScript

指定该正则表达式使能ECMAScript兼容模式行为
这个选项只能与IgnoreCase和Multiline 标志联合使用。把 ECMAScript与任何其它标志使用都会导致例外的发生。

正则表达式中的常用选项

5页,页码:[1] [2] [3] [4] [5] 

上一篇:在使用.NET字符串时保留系统资源
下一篇:在运行过程中获取信息
作者:  来源:开发者在线 ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐