在c#中使用正则表达式,第一步要引入using System.Text.RegularExpressions命名空间,该空间包括了以下八个类:
Regex-----包含了正则表达式,以及使用正则表达式的方法
MatchCollection----包含了一个正则表达式找到的所有比配项
Match-----包含了一次比配项中所有比配的文本
GropCollection---包含了一次比配中所有分组
Group-----包含了一个分组集合中一个分组的详细信息
CaptureCollection---包含了一个组的所有Capture对象
Capture-----返回一次捕获所比配的字符串
RegexCompalationInfo----提供了把一个Regex编译成一个程序的所有需要的细节
上面八个类中最主要的类是Regex类,它不仅可以创建正则表达式,而且还用很多方法可以使用正则表达式来控制操作字符串。它的很多方法都是静态的,要只是使用一次,就没有必要定义对象了
在Regex类中首先要说到是一个枚举类型的变量RegexOptions,它是来控制Regex方法执行的属性,默认的情况下,区分大小写,从左到右读取数据
例如:Regex.IsMacth(mystring,"abc",RegexOptions.Ignocase|RegexOptiongs.RightToLeft);
相关选项:
IgnoCase 忽略大小写
RightToLeft 从右往左读
None 无任何标志
MultiLIne ^ 和$可以匹配行和字符串的开头和结尾
SingleLine 规定特殊字符"."可以匹配任意字符,换行符除外
Regex类的两个主要构造函数:
1、Regex(string pattern);
2、Regex(strign pattern,RegexOptions option)
第一参数是要建立正则表达式 例如:
protected void Page_Load(object sender, EventArgs e)
{
Regex myrx = new Regex("abc");
Response.Write(myrx.IsMatch("abc is ok?"));
}
如果要比配大小写abc,则可以使用RegexOptions的选项标志
注意:Regex的比配的对象是ascii文本