兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式

上传人:宝路 文档编号:3632099 上传时间:2017-08-09 格式:DOCX 页数:8 大小:33.60KB
返回 下载 相关 举报
兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式_第1页
第1页 / 共8页
兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式_第2页
第2页 / 共8页
兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式_第3页
第3页 / 共8页
兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式_第4页
第4页 / 共8页
兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式》由会员分享,可在线阅读,更多相关《兄弟连PHP教程-PHP课程笔记-徐枭雄-正则表达式(8页珍藏版)》请在金锄头文库上搜索。

1、 兄弟连 PHP 教程-PHP 课程笔记-徐枭雄 -正则表达式1.什么是正则表达式a) 例子:/; 这就是正则表达式b) 乱七八糟的一堆字符堆砌在一起,神秘的符号,有着奇特的意义2.和正则表达式相识的事物?a) 乱/看不懂/神秘/意义医生的字 只有医院的人能看懂道士的符 只有道士明白女人的心 只有女人能懂正则表达式 只有程序员能看懂(所有的高级语言中都有正则表达式)3.学习正则表达式可以做什么、a) 操作字符串时正则表达式的唯一作用验证用户名长度是否合法验证密码是否符合标准验证手机号验证 URL 地址验证邮箱http:/ BBS 编辑器Qq 聊天表情新闻采集器 小偷程序4.看看正则表达式的一些

2、特点a) 1.正则表达式也是一个字符串b) 2.由特殊意义的字符组成的字符串c) 3.具有一定的编写规则,也是一种模式d) 4.看做是一种编程语言因为是用一些特殊字,按照规则编写出来的字符串,形成一种模式-正则表达式。注意:如果正则表达式,不和函数一起使用,则他就是一个普通的字符串而已。如果把正则表达式放入到函数中一起使用,才能发挥出正则表达式的作用。比如:将正则表达式放入到分分隔函数,哪可以用这个正则表达式去分隔字符串。总结:正则弊端是就是通过构建具有特定规则的模式了,在于输入的字符串信息进行比较,分隔,查找,替换等工作。在实际应用中记住一点:能使用字符串处理函数来完成的 就不要使用正则表达

3、式来完成。愿意:效率低。5.PHP 中提供了两套正则表达式函数库a) Posix 扩展正则表达式 函数- eregb) Perl 兼容正则表达式 函数-preg(两套函数库功能一样,但是 perl 效率高,所以官方推荐使用 perl)6.学习正则表达式时,有两方面学习a) 1.正则表达式的模式如何编写b) 2.学习正则表达式的强大处理函数7.正则表达式的语法(分 4 部)a) 1.正则定界符b) 2.正则表达式中的原子c) 3.正则表达式中的元字符(原子修正符)d) 4.正则表达式的模式修正符8.正则表达式的定界符a) 正则表达式的定界符是用来声明正则表达式的边界符号。 正则表达式常用个的边界

4、符是/实际上任何非数字字符和之外的字符都可以做正则表达式的边界符注意:一个完整的正则表达式有两边界符1.一个是字符串类型的引号边界符2.一个是正则表达式的边界符。9.正则表达式的原子a) 组成正则表达式的最小的单位就是原子1.原子都有哪些内容组成?i. 所有的可见字符都是原子ii. 大部分不可见字符也是原子:比如:空格 N R T 这些转移字符也是原子。d 表示数字 0-9 之间的任意一个数字D 表示除了数字以外的任意一个字符s 表示所有的空白符中的任意一个字符 包括:n r t 空格等S 表示除了所有空白符之外的任意一个字符w 表示数字大小写字母以及下划线中任意一个字符W 表示除了数字大小写

5、字母以及下划线之外的任意一个字符。 10.正则表达式的元字符(原子修饰符)原子列表 表示在指定的字符选取一个原子5-9表示 5,6,7,8,9 连接的字符允许缩写为开始字符到结束字符。排除列表:4表示除了 4 之外的所有字符都可以使用使用原子列表以及排除列表模拟以上的DdSswW 的效果d 0-9D 0-9s nrtS nrtw 0-9a-zA-Z_W0-9a-zA-Z原子数量修饰符?表示前面的原子出现 1 次或者 0 次 0,1+ 表示签名的原子出现 1 次或者多次 1,* 表示前面的原子出现 0 次 1 次或者多次 0,原子数量修饰列表m,n表示前面的原子可以出现从 m 个到 N 个 m,

6、 表示前面原子最少出现 m 次m表示前面原子出现 m 次字符串边界修饰符(也就是说开始和结束符)表示以指定字符开头的内容$表示以指定字符结尾的内容字符串$表示精确匹配某一个字符(多一个少一个都不行)注意:如果要使用和$ 可以匹配每一行的开始和结束部分,需要使用后面学习的模式修正符 m选择修饰符 |模式单元()1.改变优先级2.将多个原子视为一个原子,目的是可以使用原子数量修饰符3.将匹配到的括号中的内容暂时存为内存当中4.如果使用() 仅仅为了模拟一个原子使用原子数量修饰符,可以在括号的开始处使用?:来解除存于内存的作用,提高效率5.可以将括号的内容在函数的辅助相爱进行反向引用操作。 d15|

7、d18|d17x 身份证d+.d+.d+.d+ 1.1.1.1 ip 地址d3-d8|d4-d7 座机号 010-10000001 0123-1234567a-zA-Z+:/s* 域名/Aaaaaaaaaaaa:/asdhfjkahksjdfhlasldhflkjasdhflasdhljkf作业:今日讲解正则的原子 元字符 练习三遍。 整理课堂笔记自己写 电话号验证规则1 3 01234567891 4 71 5 12345678901 7 01781 8 0 1 2 3 4 5 6 7 8 9 留的在线相册 写完。模式修正符 i 忽略大小写X 忽略正则表达式中的空白。元字符:英文状态下的点匹配任意一个原子 除了ns 使得.元字符可以匹配nm 视为多行处理 该模式下和$可以匹配ne :逆向引用(先不讲)S:加速匹配(没有效果)U 模式 改变贪婪模式正则表达式默认是贪婪的,匹配最远的结束为止。我们可以在正则中使用.*?匹配任意字符的同时,使用非贪婪模式。注意:如果正则表达式为贪婪模式,使用 U 模式修正符后,该正则表达式为非贪婪模式匹配,如果该表达式为非贪婪模式,在使用 U。表示使用贪婪模式匹配。课堂代码 2 遍。练习题一套预习 GD 库

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号