正则表达式
什么是正则表达式
是一组描述字符串特征的模式,用于匹配一组字符串。这一组模式本身也是字符串。这种模式有一些规则和语法
正则表达式的用处
解决字符串的搜索、替换、分隔的问题
正则表达式的学习内容
正则表达式---》 写模式
正则表达式的处理函数
写正则表达式,用正则表达式的处理函数来进行处理
php里面正则表达式的规则
POSIX:在php4中经常使用。但由于功能、效率、书写规则都不太好,我们不使用。它是以ereg开头的
pcre:per语言的正则表达式,以preg开头。
正则表达式的书写
正则表示的组成
定界符
用来告诉php正则表达式从哪里开始,到哪里结束,一般来说定界符为//,成对出现,除了数字、字母、下划线不可以作为定界符外,其他符号都可以
原子
最小的匹配单位,要找的字符(要放在定界符中)。每一个正则表达式中最少有一个原子,因为最少要匹配一次
1、普通字符 a-z A-Z 0-9
2、非打印字符
\r 回车
\n 换行
\t 制表符
3、自定义原子表作为原子
[abc]表示原子表里面的字符匹配任意一个都可以 也可以写成[a-c]
4、通用字符作为原子
\d 任意一个数字
\D 所有非数字
\w 字母 数字
\W非字母且非数字
\s 匹配任意的空白字符
\S匹配任意非空白字符
5、转义后的元字符也可以作为原子
除了z-a\A-Z\0-9这个原子外其他的原子在进行匹配的时候都加上转义字符。让它失去原来的意义。
元字符
修饰原子功能和限定功能
[ ]原子表实际上严格来说是属于元字符里面的东西
^
在原子表中的第一个位置代表排除
在正则表达式的前面表示必须以什么开始,必须写在正则表达式的最前面
$ 在正则表达式后面代表必须以什么结束
* 表示前面的原子可以出现0次1次或多次。必须放在原子或原子表的后面
+ 表示前面的原子可以出现1次或多次
? 表示前面的原子可以出现0次或1次
{n} ,表示前面的原子只能出现n次
{n,} 表示前面的原子至少出现n次
{n,m} 表示前面的原子最少出现n次 最多出现m次
| 代表或的关系,代表两边的原子只要有一个出现就可以。优先级是最低的。
. 代表任意字符(原子)
.*代表匹配除换行符以外的任意字符
()的作用
1、提高优先级
2、将小原子,变成大原子
3、子模式,整个正则是一个大模式,小括号是大模式的子模式
模式修正符
对正则进行解释修正用的单个符号, 模式修正符号要写在定界符的外面,写在右边(一个符号一个功能,可以组合起来使用)
i:让正则表达式不区分大小写,默认是区分大小写的
m:将匹配的字符串中的每个断行都当做新的一行,默认情况下将有换行符的都当做一行
s:修正正则表达式中的. , .能匹配任意一个原子(除了换行符)
x:修正正则表达式可以省略空白
U:在使用(.*)时正则表达式是贪婪的,会匹配最后一个符合要求的内容,U可以让他匹配第一个符合要求的内容就结束这个匹配。但是不建议使用U,因为PHP里面有U模式修正符但是其他的语言没有 我们可以使用(.*?)来取消贪婪,这个是一个固定的组合
正则表达式处理函数
匹配
preg_match_all(正则表达式,匹配的字符串,要放入的数组);
preg_match(正则表达式,匹配的字符串)
匹配到为1
匹配不到为0
替换
preg_replace(正则表达式,要替换的内容,匹配的字符串)
分隔
preg_split(正则表达式,匹配分隔的字符串)
作业 1遍 张伟2遍 张伟其他作业4遍
验证表单
用户名
6-8位 第一位必须为大写字母
密码
最少6位不能为纯数字
电话
自定义了(135,136,138,150,188)
邮箱
只是用qq邮箱 数字@qq.com 数字必须为qq号 QQ号的验证 5-11
什么是正则表达式
是一组描述字符串特征的模式,用于匹配一组字符串。这一组模式本身也是字符串。这种模式有一些规则和语法
正则表达式的用处
解决字符串的搜索、替换、分隔的问题
正则表达式的学习内容
正则表达式---》 写模式
正则表达式的处理函数
写正则表达式,用正则表达式的处理函数来进行处理
php里面正则表达式的规则
POSIX:在php4中经常使用。但由于功能、效率、书写规则都不太好,我们不使用。它是以ereg开头的
pcre:per语言的正则表达式,以preg开头。
正则表达式的书写
正则表示的组成
定界符
用来告诉php正则表达式从哪里开始,到哪里结束,一般来说定界符为//,成对出现,除了数字、字母、下划线不可以作为定界符外,其他符号都可以
原子
最小的匹配单位,要找的字符(要放在定界符中)。每一个正则表达式中最少有一个原子,因为最少要匹配一次
1、普通字符 a-z A-Z 0-9
2、非打印字符
\r 回车
\n 换行
\t 制表符
3、自定义原子表作为原子
[abc]表示原子表里面的字符匹配任意一个都可以 也可以写成[a-c]
4、通用字符作为原子
\d 任意一个数字
\D 所有非数字
\w 字母 数字
\W非字母且非数字
\s 匹配任意的空白字符
\S匹配任意非空白字符
5、转义后的元字符也可以作为原子
除了z-a\A-Z\0-9这个原子外其他的原子在进行匹配的时候都加上转义字符。让它失去原来的意义。
元字符
修饰原子功能和限定功能
[ ]原子表实际上严格来说是属于元字符里面的东西
^
在原子表中的第一个位置代表排除
在正则表达式的前面表示必须以什么开始,必须写在正则表达式的最前面
$ 在正则表达式后面代表必须以什么结束
* 表示前面的原子可以出现0次1次或多次。必须放在原子或原子表的后面
+ 表示前面的原子可以出现1次或多次
? 表示前面的原子可以出现0次或1次
{n} ,表示前面的原子只能出现n次
{n,} 表示前面的原子至少出现n次
{n,m} 表示前面的原子最少出现n次 最多出现m次
| 代表或的关系,代表两边的原子只要有一个出现就可以。优先级是最低的。
. 代表任意字符(原子)
.*代表匹配除换行符以外的任意字符
()的作用
1、提高优先级
2、将小原子,变成大原子
3、子模式,整个正则是一个大模式,小括号是大模式的子模式
模式修正符
对正则进行解释修正用的单个符号, 模式修正符号要写在定界符的外面,写在右边(一个符号一个功能,可以组合起来使用)
i:让正则表达式不区分大小写,默认是区分大小写的
m:将匹配的字符串中的每个断行都当做新的一行,默认情况下将有换行符的都当做一行
s:修正正则表达式中的. , .能匹配任意一个原子(除了换行符)
x:修正正则表达式可以省略空白
U:在使用(.*)时正则表达式是贪婪的,会匹配最后一个符合要求的内容,U可以让他匹配第一个符合要求的内容就结束这个匹配。但是不建议使用U,因为PHP里面有U模式修正符但是其他的语言没有 我们可以使用(.*?)来取消贪婪,这个是一个固定的组合
正则表达式处理函数
匹配
preg_match_all(正则表达式,匹配的字符串,要放入的数组);
preg_match(正则表达式,匹配的字符串)
匹配到为1
匹配不到为0
替换
preg_replace(正则表达式,要替换的内容,匹配的字符串)
分隔
preg_split(正则表达式,匹配分隔的字符串)
什么是正则表达式
是一组描述字符串特征的模式,用于匹配一组字符串。这一组模式本身也是字符串。这种模式有一些规则和语法
正则表达式的用处
解决字符串的搜索、替换、分隔的问题
正则表达式的学习内容
正则表达式---》 写模式
正则表达式的处理函数
写正则表达式,用正则表达式的处理函数来进行处理
php里面正则表达式的规则
POSIX:在php4中经常使用。但由于功能、效率、书写规则都不太好,我们不使用。它是以ereg开头的
pcre:per语言的正则表达式,以preg开头。
正则表达式的书写
正则表示的组成
定界符
用来告诉php正则表达式从哪里开始,到哪里结束,一般来说定界符为//,成对出现,除了数字、字母、下划线不可以作为定界符外,其他符号都可以
原子
最小的匹配单位,要找的字符(要放在定界符中)。每一个正则表达式中最少有一个原子,因为最少要匹配一次
1、普通字符 a-z A-Z 0-9
2、非打印字符
\r 回车
\n 换行
\t 制表符
3、自定义原子表作为原子
[abc]表示原子表里面的字符匹配任意一个都可以 也可以写成[a-c]
4、通用字符作为原子
\d 任意一个数字
\D 所有非数字
\w 字母 数字
\W非字母且非数字
\s 匹配任意的空白字符
\S匹配任意非空白字符
5、转义后的元字符也可以作为原子
除了z-a\A-Z\0-9这个原子外其他的原子在进行匹配的时候都加上转义字符。让它失去原来的意义。
元字符
修饰原子功能和限定功能
[ ]原子表实际上严格来说是属于元字符里面的东西
^
在原子表中的第一个位置代表排除
在正则表达式的前面表示必须以什么开始,必须写在正则表达式的最前面
$ 在正则表达式后面代表必须以什么结束
* 表示前面的原子可以出现0次1次或多次。必须放在原子或原子表的后面
+ 表示前面的原子可以出现1次或多次
? 表示前面的原子可以出现0次或1次
{n} ,表示前面的原子只能出现n次
{n,} 表示前面的原子至少出现n次
{n,m} 表示前面的原子最少出现n次 最多出现m次
| 代表或的关系,代表两边的原子只要有一个出现就可以。优先级是最低的。
. 代表任意字符(原子)
.*代表匹配除换行符以外的任意字符
()的作用
1、提高优先级
2、将小原子,变成大原子
3、子模式,整个正则是一个大模式,小括号是大模式的子模式
模式修正符
对正则进行解释修正用的单个符号, 模式修正符号要写在定界符的外面,写在右边(一个符号一个功能,可以组合起来使用)
i:让正则表达式不区分大小写,默认是区分大小写的
m:将匹配的字符串中的每个断行都当做新的一行,默认情况下将有换行符的都当做一行
s:修正正则表达式中的. , .能匹配任意一个原子(除了换行符)
x:修正正则表达式可以省略空白
U:在使用(.*)时正则表达式是贪婪的,会匹配最后一个符合要求的内容,U可以让他匹配第一个符合要求的内容就结束这个匹配。但是不建议使用U,因为PHP里面有U模式修正符但是其他的语言没有 我们可以使用(.*?)来取消贪婪,这个是一个固定的组合
正则表达式处理函数
匹配
preg_match_all(正则表达式,匹配的字符串,要放入的数组);
preg_match(正则表达式,匹配的字符串)
匹配到为1
匹配不到为0
替换
preg_replace(正则表达式,要替换的内容,匹配的字符串)
分隔
preg_split(正则表达式,匹配分隔的字符串)
作业 1遍 张伟2遍 张伟其他作业4遍
验证表单
用户名
6-8位 第一位必须为大写字母
密码
最少6位不能为纯数字
电话
自定义了(135,136,138,150,188)
邮箱
只是用qq邮箱 数字@qq.com 数字必须为qq号 QQ号的验证 5-11
什么是正则表达式
是一组描述字符串特征的模式,用于匹配一组字符串。这一组模式本身也是字符串。这种模式有一些规则和语法
正则表达式的用处
解决字符串的搜索、替换、分隔的问题
正则表达式的学习内容
正则表达式---》 写模式
正则表达式的处理函数
写正则表达式,用正则表达式的处理函数来进行处理
php里面正则表达式的规则
POSIX:在php4中经常使用。但由于功能、效率、书写规则都不太好,我们不使用。它是以ereg开头的
pcre:per语言的正则表达式,以preg开头。
正则表达式的书写
正则表示的组成
定界符
用来告诉php正则表达式从哪里开始,到哪里结束,一般来说定界符为//,成对出现,除了数字、字母、下划线不可以作为定界符外,其他符号都可以
原子
最小的匹配单位,要找的字符(要放在定界符中)。每一个正则表达式中最少有一个原子,因为最少要匹配一次
1、普通字符 a-z A-Z 0-9
2、非打印字符
\r 回车
\n 换行
\t 制表符
3、自定义原子表作为原子
[abc]表示原子表里面的字符匹配任意一个都可以 也可以写成[a-c]
4、通用字符作为原子
\d 任意一个数字
\D 所有非数字
\w 字母 数字
\W非字母且非数字
\s 匹配任意的空白字符
\S匹配任意非空白字符
5、转义后的元字符也可以作为原子
除了z-a\A-Z\0-9这个原子外其他的原子在进行匹配的时候都加上转义字符。让它失去原来的意义。
元字符
修饰原子功能和限定功能
[ ]原子表实际上严格来说是属于元字符里面的东西
^
在原子表中的第一个位置代表排除
在正则表达式的前面表示必须以什么开始,必须写在正则表达式的最前面
$ 在正则表达式后面代表必须以什么结束
* 表示前面的原子可以出现0次1次或多次。必须放在原子或原子表的后面
+ 表示前面的原子可以出现1次或多次
? 表示前面的原子可以出现0次或1次
{n} ,表示前面的原子只能出现n次
{n,} 表示前面的原子至少出现n次
{n,m} 表示前面的原子最少出现n次 最多出现m次
| 代表或的关系,代表两边的原子只要有一个出现就可以。优先级是最低的。
. 代表任意字符(原子)
.*代表匹配除换行符以外的任意字符
()的作用
1、提高优先级
2、将小原子,变成大原子
3、子模式,整个正则是一个大模式,小括号是大模式的子模式
模式修正符
对正则进行解释修正用的单个符号, 模式修正符号要写在定界符的外面,写在右边(一个符号一个功能,可以组合起来使用)
i:让正则表达式不区分大小写,默认是区分大小写的
m:将匹配的字符串中的每个断行都当做新的一行,默认情况下将有换行符的都当做一行
s:修正正则表达式中的. , .能匹配任意一个原子(除了换行符)
x:修正正则表达式可以省略空白
U:在使用(.*)时正则表达式是贪婪的,会匹配最后一个符合要求的内容,U可以让他匹配第一个符合要求的内容就结束这个匹配。但是不建议使用U,因为PHP里面有U模式修正符但是其他的语言没有 我们可以使用(.*?)来取消贪婪,这个是一个固定的组合
正则表达式处理函数
匹配
preg_match_all(正则表达式,匹配的字符串,要放入的数组);
preg_match(正则表达式,匹配的字符串)
匹配到为1
匹配不到为0
替换
preg_replace(正则表达式,要替换的内容,匹配的字符串)
分隔
preg_split(正则表达式,匹配分隔的字符串)
1885

被折叠的 条评论
为什么被折叠?



