正则表达式基础学习[1]

正 则 表 达 式 学 习

 

正则表达式在验证字符是否匹配,字符串替换,提取子字符串等各个方面应用都非常广泛

 

基础表达符号

符号

等价类

反向结构

等价反向类

\d (数字)

[0-9]

\D

[^0-9]

\w ()

[a-zA-Z0-9_]

\W (非字)

[^a-zA-Z0-9_]

\s (空格)

[\r\t\n\f]

\S(非空格)

[^\r\n\f]

\b

 

 

 

 

倍增器

符号

说明

加在字符后面,表示有一个或多个同样该字符

*

加在字符后面,表示有0个或多个同样该字符

比如: 1* 表示多个1

?

加在字符后面,表示有零次或一次同样该字符

{n,m}

x{1,2}

表明重复在1次到2次的同样的字符

比如

xxxx匹配

xx匹配

x也匹配

 

{n,}

表示n个或多于n个

举例:

x{4,}

xxxx匹配

xx不匹配

 

{n}

强制定义连续n个匹配

举例:

x{4}

xxxx匹配

$

匹配结束

 

符号

说明

交替,或者的意思

(a|b)* 任意多的a或b

a|(b*) 一个a或者多个b

[]

单选

[0]

0匹配

()

字串

(fdsafdfd)

 

\

下一个匹配符的开始

  

 

提示:

在perl语言中,用//定义一个匹配项,而在c#中不需要。

两个匹配项之间没有分隔符

 

 

 

演示开始

邮件地址验证

\w+([.]\w+)*@\w+([.]\w+)*

 

\w+  一个或多个字符

([.]\w+) 多个(  .fjdajfda)的情况,fjdajfda乱举的例子

。。。。

邮编:\d{6}

匹配一个非零字符:[1-9]+\d*

原文地址:https://www.cnblogs.com/king_astar/p/43892.html