网站地图
zenghuilan.com
生活小窍门 解释生活中的一切名词
RegEx 发布于:

RegEx是Visual Studio .NET中的正则表达式类 .NET中正则表达式的语法参见MSDN。该类包含许多方法,在此恕不赘述。

在C#中加入RegularExpression命名空间

在C#中,要使用正则表达式类,请在源文件开头处添加以下语句:

using System.Text.RegularExpressions;

使用静态Match方法,可以得到源中第一个匹配模式的连续子串。

例如:

Match myMatch = Regex.Match("asdfasdfasdf", @"\basdf\B");

Console.WriteLine(myMatch.Value);

程序将输出asdf(这里匹配了文本中第二个asdf)

静态的Match方法有2个重载,分别是

Regex.Match(string input, string pattern);

Regex.Match(string input, string pattern, RegexOptions options);

第一种重载的参数表示:输入、模式

第二种重载的参数表示:输入、模式、RegexOptions枚举的“按位或”组合。

RegexOptions枚举的有效值是:

Complied表示编译此模式

CultureInvariant表示不考虑文化背景

ECMAScript表示符合ECMAScript,这个值只能和IgnoreCase、Multiline、Complied连用

ExplicitCapture表示只保存显式命名的组

IgnoreCase表示不区分输入的大小写

IgnorePatternWhitespace表示去掉模式中的非转义空白,并启用由#标记的注释

Multiline表示多行模式,改变元字符^和$的含义,它们可以匹配行的开头和结尾

None表示无设置,此枚举项没有意义

RightToLeft表示从右向左扫描、匹配,这时,静态的Match方法返回从右向左的第一个匹配

Singleline表示单行模式,改变元字符.的意义,它可以匹配换行符

注意:Multiline在没有ECMAScript的情况下,可以和Singleline连用。Singleline和Multiline不互斥,但是和ECMAScript互斥。

这个方法的重载形式同静态的Match方法,返回一个MatchCollection,表示输入中,匹配模式的匹配的集合。

此方法返回一个bool,重载形式同静态的Matches,若输入中匹配模式,返回true,否则返回false。

可以理解为:IsMatch方法,返回Matches方法返回的集合是否为空。


相关文章推荐:
正则表达式 | 正则表达式 | 使用正则表达式 | 源文件 | 重载 | 元字符 | 重载 | 重载 |