一个好用的Regex测试插件
快捷键:ctrl+ r , ctrl+ x 打开正则表达式工具
C#的正则表达式的常用的规则:
[abc] 里面的每一次字符都可以进行匹配
a{2} 匹配2个a
a{2,3} 最少重复2次,最多重复3次
C* 匹配C字符0个或多个
C+ 一个或多个
C? 0个或1个
\s 匹配空格
\S 匹配非空格
. 匹配一个.符号
spike$ 以spike结尾的字符串(一句话必须以spike结尾)
.(spike). 获取字符串中spike的数量
(.*) 还是不太清楚这个()的用法
(spike%xx) 匹配spike或者xx
\w 匹配所有的字符,包括0-9
\W 匹配所有非字符
\D 匹配所有非数字字符
Regex的静态方法
bool resutl = Regex.IsMatch(s1,pattern));
Regex的match如何使用
var ss = "this is alksdjf;lasjdfl;asjkdlf;as";
var pattern = @"\b(\w+)";
Match match = Regex.Match(input,pattern);
while(match.Success){
Console.WriteLine(match.Groups[1].Values);
match = match.NextMatch();
}
/////////////////////////////////////////////////
Regex r = new Regex("abc");
matches = r.Matches("12312");
foreach(Match match in matches){
Console.WriteLine(match.Value+match.Index);
Console.WriteLine(match.Result("$&,hello boy"); // $&代表上次匹配成功的字符
}
Regex.Replace
Regex.Replace(input,pattern,replacement);
RegexSplit
foreach(string item in Regex.Split(input,pattern)){
Console.WriteLiine(item);
}