前述:
引入
using
System.Text.RegularExpressions;
Regex r = new Regex("MAtch", RegexOptions.IgnoreCase);
中第二个参数可选,例中参数作用忽略大小写
protected
void Button1_Click(object sender, EventArgs e)
{
//
正规表达式应用
1
Regex rx = new Regex(@"^/d{5}-/d{4}$");
string zip = "90210-1234";
Match m = rx.Match(zip);
if (m.Success)
{
Response.Write("Numerically, " + zip + " is a valid zip code.");
}
}
protected
void Button1_Click(object sender, EventArgs e)
{
//
正规表达式应用
2
using System.Text.RegularExpressions;
MatchCollection mc;
Regex r = new Regex("MAtch", RegexOptions.IgnoreCase);//
忽略大小写对比
mc = r.Matches("matchcollectionregexmatchs");
for (int i = 0; i < mc.Count; i++)
{
Response.Write(mc[i].Value + " POS:" + mc[i].Index.ToString() + "<br>");
}
}
引入.net的正规类的知识(务必深入理解):
C#中的正则表达式包含在.NET基础类库的一个名称空间下,这个名称空间就是System.Text.RegularExpressions。该名称空间包括8个类,1个枚举,1个委托。他们分别是:
Capture: 包含一次匹配的结果;
CaptureCollection: Capture的序列;
Group: 一次组记录的结果,由Capture继承而来;
GroupCollection:表示捕获组的集合
Match: 一次表达式的匹配结果,由Group继承而来;
MatchCollection: Match的一个序列;
MatchEvaluator: 执行替换操作时使用的委托;
Regex:编译后的表达式的实例。
RegexCompilationInfo:提供编译器用于将正则表达式编译为独立程序集的信息
RegexOptions 提供用于设置正则表达式的枚举值
Regex类中还包含一些静态的方法:
Escape: 对字符串中的regex中的转义符进行转义;
IsMatch: 如果表达式在字符串中匹配,该方法返回一个布尔值;
Match: 返回Match的实例;
Matches: 返回一系列的Match的方法;
Replace: 用替换字符串替换匹配的表达式;
Split: 返回一系列由表达式决定的字符串;
Unescape:不对字符串中的转义字符转义。