System.Text.RegularExpressions 命名空间
一、 Regex类,表示不可变的正则表达式。
IsMatch (String) 是否找到匹配项。
Match (String)返回单个 Match 对象
返回一个Match
Matches (String) 返回所有成功的匹配
返回MatchCollection
Replace()
RegexOptions成员
IgnoreCase 不区分大小写比较
Multiline 多行模式。更改 ^ 和 $ 的含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。
Regex.Replace (String, MatchEvaluator) //可以对找出每个结果执行函数反回字符串
替换字串说明
$number 代表第几组,1起,0表示整体
二、 Match类
Index原始字符串中发现捕获的子字符串的第一个字符的位置
Length捕获的子字符串的长度
Value捕获的子字符串
Success 指示匹配是否成功
三、 MatchCollection类
Count捕获数
Item该集合的单个成员
正则表达式技巧:
1、 两个””表示一个”
2、 .*加?表示非贪婪
3、 [sS]表示任何字符
4、 @表示非转义,一般正则前要加@
5、择一匹配(|),用于字符串
5、 正向预搜索、反向预搜索
正向预搜索:对搜索结果向后再判断
正声明 (?=…) 符合
负声明 (?!...) 不符合
反向预搜索:对搜索结果向后再判断
正声明 (?<=…) 符合
负声明 (?<!...) 不符合
正则具体:
()分段 []选择字符 {}重复次数
/d 0-9的数字 /D /d的补集
/w 单词字符,指大小写字母、0-9的数字、下划线
/W /w的补集
/s 空白字符,包括换行符/n、回车符/r、制表符/t、垂直制表符/v、换页符/f
/S /s的补集
. 除换行符/n外的任意字符
/b 匹配一个单词的边界
/B 匹配一个非单词的边界
重复字符
{n} 匹配前面的字符n次
{n,} 匹配前面的字符n次或多于n次
{n,m} 匹配前面的字符n到m次
? 匹配前面的字符0或1次
+ 匹配前面的字符1次或多于1次
* 匹配前面的字符0次或式于0次