正则表达式与.netframework 正则引擎
System.Text.RegularExpressions 命名空间提供了访问 .netframwork 中正则引擎来完成正则功能的类。
对正则操作的功能根据面向对象的思想被抽象为容易理解的类。并将这些操作正则的功能指派到这些类上。
[声明:以下部分解释来源与 MSDN 技术文档]
Regex 类 :表示不可变的正则表达式。
Regex 提供了三个构造重载构造 Regex 对象。其最核心的构造基础是一个字符串类型的正则式,必须在构造 Regex 对象时或通过 Mathc 方法中的重载中提供。如需要验证的字符串可以后期通过方法输入。
它的属性主要用来获取或设置匹配设定。
CacheSize :静态的 CacheSize 属性用来修改当前 Regex 对象的最大缓存项数。只有在需要关闭或使用大的缓存时才手动设定该属性。
Options :用来返回传入 Regex 构造函数的选项。只读属性。
RightToLeft : bool 类型,用来指示正则表达式是否从右向左进行搜索。只读。
Regex 提供了与对象拥有的方法一样功能的静态方法。
Bool IsMatch(string) : 确定传入文本是否能与当前 Regex 含有的正则式找到匹配项。
Match Match ( … ) : 返回一个 Match 对象。
MatchCollection Matches ( … ) : 返回所有匹配的 Match 集合。
Replace(…) : 用字符串替换正则匹配的项。
Split(…): 在由正则表达式匹配项定义的位置将输入字符串拆分为一个子字符串数组。
Unescape(…): 取消转义输入字符串中的任何转义字符。
Escape(…): 通过替换为转义码来转义最小的元字符集( / 、 * 、 + 、 ? 、 | 、 { 、 [ 、 ( 、 ) 、 ^ 、 $ 、 . 、 # 和空白)。
值得注意的是 Regex 返回结果的相关方法不会产生一个 NULL 型的引用。其属性也不会。所以,在程序中需要根据不同的方式来测试匹配项是否正确。
如 count,successf, 等运用。
Match 类:表示单个匹配成功的项
Match 类没有公共构造函数。 Regex 对象的 Match 方法将返回该对象。
Match 方法关联着一个被正则匹配的字符串。如果没有匹配成功,则 Value 值为空字符串。
Bool Success: 该属性用来指示此项匹配是否成功。值得注意的是如果匹配没有成功,返回的 Match 对象并不为空。所以使用该属性而不能以非空方式做为测试条件。
Value :用来获取捕获的字符串。和对 Match 调用 ToString() 方法的结果相同。
Index :原始字符串中发现捕获的子字符串的第一个字符的位置。
Length :捕获的字符串的长度。
[未完 版权所有 如有问题不吝赐教]