导入引用命名空间:using System.Text.RegularExpressions

            //Regex类,常用方法:

            //摘要:1.IsMatch(String);2.IsMatch(String, Int32);3.IsMatch(String, String);4.IsMatch(String, String, RegexOptions);5.IsMatch(String, String, RegexOptions, TimeSpan)
//返回结果:如果正则表达式找到匹配项,则为 true;否则,为 false。
//应用实例:验证邮政编码(5个数字)
bool bl1 = new Regex(@"^\d{5}$").IsMatch("55720"); //结果:True bool bl2 = new Regex(@"^[A-Za-z0-9]$").IsMatch("a55b720", 2); //结果:False bool bl3 = Regex.IsMatch("55720", @"^\d{5}$"); //结果:True //Success属性
Match match = regex.Match(input);
while (match.Success) {
// Handle match here...
match = match.NextMatch();
} bool bl4 = Regex.IsMatch("55720", @"^\d{5}$", RegexOptions.IgnoreCase);//结果:True //摘要:1.Match(String);2.Match(String, Int32);3.Match(String, String);4.Match(String, Int32, Int32);5.Match(String, String, RegexOptions);
//返回结果:一个对象,包含有关匹配项的信息。
//应用实例:取得网页标题
string str = Regex.Match("<title>贵源网络</title>", "<title>([^<]*)</title>", RegexOptions.IgnoreCase | RegexOptions.Multiline).Groups[1].Value; //结果:贵源网络
//注意:Regex.Match方法得到的Groups的索引是从1开始的,而不是从0开始的 //摘要:1.Matches(String);2.Matches(String, Int32);3.Matches(String, String);4.Matches(String, String, RegexOptions);5.Matches(String, String, RegexOptions, TimeSpan);
//返回结果:如果在输入字符串中发现包含任何或全部匹配,则返回匹配集合对象。
//应用实例:遍历匹配字符串的值和项
foreach (Match m in Regex.Matches("ababb", "a*"))
{
Response.Write(String.Format("{0}-{1},", m.Value, m.Index)); //结果:a-0,-1,a-2,-3,-4,-5,
} //摘要:
//1.Replace(String, String);2.Replace(String, MatchEvaluator);3.Replace(String, String, Int32);4.Replace(String, String, String);5.Replace(String, String, MatchEvaluator);
//6.Replace(String, MatchEvaluator, Int32);7.Replace(String, String, Int32, Int32);8.Replace(String, String, String, RegexOptions);9.Replace(String, String, MatchEvaluator, RegexOptions);
//10.Replace(String, MatchEvaluator, Int32, Int32);11.Replace(String, String, String, RegexOptions, TimeSpan);12.Replace(String, String, MatchEvaluator, RegexOptions, TimeSpan)
//返回结果:用给定的替换字符串替换输入字符串中的匹配。
//应用实例: 替换字符串 " ",将其用单个空格字符代替。
string str1 = new Regex(@"\s+").Replace("This is text", " "); //结果:This is text //string str2 = new Regex(@"\w+").Replace("four score and seven years ago", new MatchEvaluator("CapText")); string str3 = new Regex("(\\w)\\1").Replace("a1b2c3d4f5", "$1", 5); //结果:a1b2c3d4f5 string str4 = Regex.Replace("This is text", "\\s+", " "); //结果:This is text //摘要:1.Regex.Split (String);2.Regex.Split (String, Int32);3.Regex.Split (String, String);4.Regex.Split (String, Int32, Int32);5.Regex.Split (String, String, RegexOptions)
//返回结果:将输入字符串拆分成用正则表达式匹配分开的数组元素时,返回数组字符串。
//应用实例:以'-'为一组进行分隔成数组
int len1 = new Regex("(-)").Split("one-two-three").Length; //结果:3 int len2 = new Regex(@"\d+").Split("123ABCDE456FGHIJKL789MNOPQ012", 3).Length; //结果:3 int len3 = Regex.Split("plum-pear", "-").Length; //结果:2 //结果:, ABCDE, FGHIJ789KLMNO012PQRST
Regex rgx = new Regex(@"\d+");
string input = "123ABCDE456FGHIJ789KLMNO012PQRST";
Match m = rgx.Match(input);
if (m.Success)
{
string[] result = rgx.Split(input, 3, m.Index);
for (int ctr = 0; ctr < result.Length; ctr++)
{
Response.Write(result[ctr]);
if (ctr < result.Length - 1)
Response.Write(", ");
}
} int len5 = Regex.Split("Abc1234Def5678Ghi9012Jklm", "[a-z]+", RegexOptions.IgnoreCase).Length;//结果:1 //Regex类,常用属性 Compiled
当在循环中执行许多匹配操作时使用此选项。这可以节省每一循环的分析表达式步骤。 Multiline
它与输入字符串中的行数没有关系。确切地说,它只修改 ^ 和 $ 的方式,以便匹配行开始 (BOL) 和行结尾 (EOL),而不是匹配整个输入字符串的开始和结尾。 IgnoreCase
使模式在匹配搜索字符串时忽略大小写。 IgnorePatternWhitespace
允许根据需要在模式中包括任意数量的空白区域,也支持使用 (?# 注释 #) 语法在模式中加入注释。 SingleLine
它与输入字符串中的行数没有关系。更确切地说,它将导致 .(句点)元字符匹配任意字符,而不是除 \n 之外的任意字符(默认情况)。

asp.net正则表达式的更多相关文章

  1. asp.net正则表达式提取网页网址、标题、图片实例以及过滤所有HTML标签实例

    无论你用什么语言,正则表达式的处理方法都是非常灵活.高效的,尤其是对某些字符串的抓取.过滤方面,更显其优势. 正则表达式的写法通常比较简单,几行短代码便能轻松完成看似很复杂的事情,更值得称赞的是,它的 ...

  2. asp.net正则表达式过滤标签和数据提取

    无论什么语言,正则表达式的处理方法都是非常灵活.高效的,尤其是对某些字符串的抓取.过滤方面,更显其优势. 正则表达式的写法通常比较简单,几行短代码便能轻松完成看似很复杂的事情,更值得称赞的是,它的执行 ...

  3. asp.net正则表达式学习例子

    asp.net 获取网页Document时常会用到 edited by:曹永思-博客园 1.获取某个class的div内的标签 获取<div class="imgList2" ...

  4. asp.net 正则表达式

    在平时的开发中常常用到替换法:  普通的字符串替换可以使用string.replace(string,string),但是比较难解决HTML文本的替换. 经我几番查找,终也找出解决办法:正则匹配替换. ...

  5. asp.net——正则表达式

    在平时的开发中常常用到替换法:  普通的字符串替换可以使用string.replace(string,string),但是比较难解决HTML文本的替换. 经我几番查找,终也找出解决办法:正则匹配替换. ...

  6. asp.net正则表达式删除指定的HTML标签的代码

    抓取某网页的数据后(比如描述),如果照原样显示的话,可能会因为它里面包含没有闭合的HTML标签而打乱了格式,也可能它里面用了比较让人 费解 的HTML标签,把预订的格式搅乱. 如果全盘删除里面的 HT ...

  7. ASP.NET正则表达式(URL,Email)

    public static bool IsUrl(this string str)    {        if (str.IsNullOrEmpty())            return fal ...

  8. asp.net正则表达式去除a标签

    if (drr["allow_a"].ToString() == "False") { cont = dr["news_Content"]. ...

  9. asp.net正则表达式类的定义

    using System; using System.Collections; using System.Reflection; using System.Reflection.Emit; using ...

随机推荐

  1. 通过进程ID获取基地址

    下面代码是通过进程ID来获取进程的基地址,创建一个进程快照后,读取进程模块,一般情况下第一个模块就是进程的基地址,下面的程序通过模块的字符串匹配来找到基地址.通过MODULEENTRY32来读取,下面 ...

  2. ISO 8601: Delphi way to convert XML date and time to TDateTime and back (via: Stack Overflow)

    Recently I needed a way of concerting back and forth ISO 8601 DateTime values used in XML from Delph ...

  3. C#编程(四十九)----------队列

    队列 1.Queue定义 System.Collections.Queue类表示对象的先进先出集合,存储在Queue(队列)中的对象在一端插入,从另一端移除. 2.优点 (1).能对集合进行顺序处理( ...

  4. Ubuntu64位下使用eclipse闪退的解决

    解决办法: 删除文件 [workspace]/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi

  5. Visual Studio Code 配置 gcc

    作者:谭九鼎链接:https://www.zhihu.com/question/30315894/answer/154979413来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  6. probotuf 标量数值类型

    标量数值类型 一个标量消息字段可以含有一个如下的类型--该表格展示了定义于.proto文件中的类型,以及与之对应的.在自动生成的访问类中定义的类型: .proto类型 Java 类型 C++类型 备注 ...

  7. ASP.NET Razor C# 和 VB 代码语法

    ylbtech-.NET: ASP.NET Razor  C# 和 VB 代码语法 Razor 不是一种编程语言.它是服务器端的标记语言. 1. C# 和 VB 代码语法返回顶部 Razor 同时支持 ...

  8. 从客户端(SeekingJobs="<B>·</B> 物流规划,<B>·</...")中检测到有潜在危险的 Request.Form 值。

    今天提交各东西发觉出错了,错误信息如下: “/”应用程序中的服务器错误. 从客户端(SeekingJobs="<B>·</B> 物流规划,<B>·< ...

  9. 【转】qt ,使用tcp/ip协议网络传输数据时,字节序转换方法

    网络传输数据是需要保证字节序的正确,才能保证传输数据的准确,网络字节序一般是大端字节序.qt提供了以下两种方法来将本地字节序转换为网络字节序: 方法一,使用qt提供的字节序转换函数 T qFromBi ...

  10. axios post提交的Content-Type

    使用axios的坑 jQuery.ajax的post提交默认的请求头的Content-Type: application/x-www-form-urlencoded而axios.post提交的请求头是 ...