LZ菜鸟,仅整理笔记,顺带记录一下,谓之增加印象。
LZ认为,没必要太纠结原理,模型, 屌丝能用就对了,剩下的事情用多了自然会去探索。
中文:正则表达式,英文:Regular ExPression,也叫匹配模式(pattern),用来检验字符串是否满足特定的规则,或从字符串捕获满足特定规则的子串。
字符匹配
最简单的正则表达式由“普通字符”和“通配符”组成。比如“Room\d\d\d”就是这样的正则表达式。
.NET提供了一批与正则表达式相关的类,它们都位于 using System.Text.RegularExpressions 命名空间里,现在我们来看下Regex类。
Regex类的部分方法
@前缀和转移字符
我们前面学习过控制文本格式的转移字符,如” \n “ " \" " " \t " " \\ "等,现在又学习了正则表达式的转移字符,如 " \. " " \w " " \d " " \s " " \\ "等,在正则中它们是有区别的。
Regex exoression=new Regex("\d");
这样写就会出现错误,因为反斜杠 ” \ “ 本身就是一个特殊的字符,要想表示反斜杠本身,需要使用它的转移符 ” \\ “ ,所以需要写成下面的形式:
Regex expression =new Regex("\\d");
但是这种形式会降低可读性,所以我们通常使用加 @ 前缀的方式。
Regex expression =new Regex(@"\d");
这时会忽略控制文本的格式的转移符,但不忽略正则表达式的转移符。
添加前缀@后,如果字符串里需要引用双引号本身,就可以用连续的双引号来表示。
Regex expression=new Regex(@"Say ""Hello"" ")
@可选字符集
除了通配符外,我们还可以把某个位置上允许出现的字符卸载方括号 [] 内,组成可选字符集,比如:
{
Console.WriteLine(match);
} Console.WriteLine(match);
或匹配符
Tips:鉴于正则表达式难以书写,常用的我们可以百度,入匹配注册信息之类的,如果自己编写不靠谱,可以使用 "Regex Tester"工具来测试。
原标题:C#菜鸟正则表达式一
关键词:C#