正则表达式

一、概念

正则表达式是用来表示字符串特征的表达式。它说明了字符串中那些字符是必须有的,哪些是可能出现的,哪些是不能出现的。

二、元字符

1) . 表示一个字符。如:a.b,表示ab之间有一个除了 外的单个字符。

2)[] 表示 字符的筛选。括号中的字符任选一个。

3)[^] 除了括号中的字符,任选一个。

4)| 或者。有限级别很低

5)()表示改变优先级或者提取组

6)* 限定符。表示前一个字符(组)出现0次或者多次。

7)+ 表示前一个字符(组)至少出现一次

8)?表示前一个字符(组)出现0次或者一次。

9){n} 表示前一个字符(组)必须出现n次

10){n,} 至少出现n次

11){n,m} 至少出现n次,最多出现m次

三、正则表达式基本方法

Regex.Match();//在指定的字符串中搜索第一个匹配的字符串
            Regex.IsMatch();//在指定的字符串中是否找到了匹配项
            Regex.Matches();//在指定的字符串中搜索所有匹配的字符串
            Regex.Replace();//在指定的字符串内搜索匹配的字符串,并且替换
            Regex.Split();//

Regex.Escape()//提示正则引擎按照原意的字符来解释,而不是安装正则表达式的元字符来解释。

练习:

1.string reg="[1][0-9]"; 表示只要字符串中连续出现一个10-20之间(包括10,不包括20)的字符串就可以。 如:sdfsd12dfs也符合要求。

2.string reg="^[1][0-9]$"表示以1开头,0-9之间的数字结尾的数。

3.string reg="^[1]|[0-9]$",表示以1开头,或者以0-9之间的某个数结尾的字符串。1001,0001都匹配(进一步说明 | 的优先级别很低)

4.string reg="^([1][0-9])$"

5.string reg="^([1][0-9])324$"

6.身份证的正则表达式。

方式一、 "^([0-9]{15}|[0-9]{17}[0-9Xx])$";

方式二、 "^([0-9]{15}([0-9]{2}[0-9Xx])?)$";

原文地址:https://www.cnblogs.com/wesley168/p/6669399.html