正则表达式

来源:互联网 发布:php网盘源码 编辑:程序博客网 时间:2024/06/09 22:12

有什么用?

对字符串文本的操作。

1.检测字符串的合法性。如:电话,IP合法性。

2.替换字符串。

3.查询字符串。

是什么?

类型

独立于编程语言的一种文本处理协议。


模型

合同,规范。


结构

1.字符串的开始和结束符号

开始: ^

结束: $


2.字符串某个位置上的内容

特殊字符:

\f 换页符

\n 换行符

\r 回车符

\t 制表符


其他字符:


字符集:[ ]   可能出现集合中的一个元素,属于范围的限定

字符集简写:

\d 数字字符集中的一个元素 

 \D 非数字字符集中的一个元素

.   非"\n" 之外的字符集中的一个元素

\s 任意空白字符

\S 任意非空白字符


逻辑控制:

 ^ 字符集中取非操作。[^a] 非a的字符集中的一个元素

 - 字符集范围操作。 [a-z] a到z的字符集中的一个元素

|  字符取或操作。(t|w)ood  字符串为 wood 或 food

\    转义字符

3.字符串位数控制

修饰前面的字符,控制前面字符出现的次数。

位数控制:

{3} 出现3次

{3,5}出现次数的区间,最少3次,最多5次。3次到5次之间都行。

次数控制简写:

 *    相当于{0,}

+    相当于{1 ,}

? 相当于{0,1}


应用例子?

检测手机号合法:

^0?(13[0-9]|15[012356789]|18[0-9]|14[57])[0-9]{8}$

检测IP合法:

^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.

(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.

(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.

(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$


0 0