摘要:
语法:??,*?,+?,{n}?,{n,m}? 涵义:简单说,后面的这个?(lazy符)告诉正则引擎,它前面的表达式匹配到最短的匹配项就不用匹配下去了,如??,?本身匹配0-1个匹配项,那么??就取最短的,匹配0个项就不匹配下去了,同理,*?匹配0个,+?匹配1个,{n}?匹配n个,{n,m}?匹配n个。当用@”\w*?”匹配”abcd”时,会有五... 阅读全文
摘要:
语法:??,*?,+?,{n}?,{n,m}? 涵义:简单说,后面的这个?(lazy符)告诉正则引擎,它前面的表达式匹配到最短的匹配项就不用匹配下去了,如??,?本身匹配0-1个匹配项,那么??就取最短的,匹配0个项就不匹配下去了,同理,*?匹配0个,+?匹配1个,{n}?匹配n个,{n,m}?匹配n个。当用@”\w*?”匹配”abcd”时,会有五... 阅读全文
摘要:
反向引用,指把匹配出来的组引用到表达式本身其它地方,比如,在匹配HTML的标记时,我们匹配出一个<a>,我们要把匹配出来的a引用出来,用来找到</a>,这个时候就要用到反向引用。 语法 a、反向引用编号的组,语法为\number b、反向引用命名的组,语法为\k<name> 举例 a、匹配成对的HTML标签 @"<(?<tag>[^\s>]+)[^>]*>.*</\k<tag>... 阅读全文
摘要:
正则表达式中的组是很重要的一个概念,它是我们通向高级正则应用的的桥梁。 组的概念 一个正则表达式匹配结果可以分成多个部分,这就是组(Group)的目的。能够灵活的使用组后,你会发现Regex真是很方便,也很强大。 先举个例子 public static void Main() { string s = "2005-2-21"; Regex reg = new Regex(@"(?&l... 阅读全文
摘要:
因为.net的基本正则语法和Perl5基本相同,所以基本语法你可以去下载一下M$的JS帮助文档,上面有详细的说明\d表示什么,{,5}表示什么,\[表示什么……,这里我只想提醒大家一点,为了避免和反向引用相冲突,在你用\nn表示八进制的ASCII码时,请在\后加0,就是说,\40在表示ASCII码时,请这样写\040。 替换 Regex类有一个静态的Replace方... 阅读全文
摘要:
摘要:本文给出了在C#下利用正则表达式实现字符串搜索功能的方法,通过对.NET框架下的正则表达式的研究及实例分析,总结了正则表达式的元字符、规则、选项等。 关键字:正则表达式、元字符、字符串、匹配 1、正则表达式简介 正则表达式提供了功能强大、灵活而又高效的方法来处理文本。正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取... 阅读全文
|