《正则表达式学习》PPT课件.ppt
七、正则表达式,PHPChina 工作室,知识回顾,常用的字符串处理函数定义输出比较查找处理,内容摘要,正则表达式的概念正则表达式的构成正则表达式的函数,1、正则表达式的概念,正则表达式的概念正则表达式为我们提供高效的处理字符串的方法在细节和处理速度上兼容perl 风格正则表达式与posix风格的正则表达式有所不同掌握了正则表达式的基础,就可以把知识用到其它的语言(比如:perl,java)或者支持Posix风格的正则表达式的UNIX shell环境中正则表达式经常用于验证表单的提交内容,判断电话号码,地址,EMAIL的地址,身份证号码,生日是否有效,2、正则表达式的构成,正则表达式的构成模式是正则表达式最基本的元素模式是一组描述字符串特征的字符,模式可以很简单,由普通字符串组成,也可以很复杂,包含很多特殊字符.特殊字符happy 是由特殊字符与字符串happy组成的模式,表示只匹配以happy开头的字符串.并且区分大小写.特殊字符$happy$是由特殊字符$与字符串happy组成的模式,表示只匹配以happy结尾的字符串,区分大小写,2、正则表达式的构成,特殊字符 表示范围,可以把需要的字符放在 中表示一个字符a-z要求以小写字母开头A-Z$要求以大写字母结尾0-9要求以数字开始,2、正则表达式的构成,:alpha:匹配包含字母与数字的字符:digit:匹配任意数字:space:匹配任意空白 0-9-.匹配数字,减号,句号0-9符号在 内表示非(排除)表示第一个字符不能是数字,2、正则表达式的构成,限定符描述英文点号限定符之前的表达式可被查找到1 次?限定符之前的表达式可被查找到 0 次或 1 次+限定符之前的表达式可被查找到 1 次或多次*限定符之前的表达式可被查找到任意次(含 0 次),2、正则表达式的构成,匹配一个单词或一组数字n限定符之前的表达式仅可被查找到 n 次an,代表a连续出现了至少n次n,m限定符之前的表达式可被查找到 n 次到 m 次之间,3、正则表达式的函数,正则表达式函数php提供了常用的函数来处理正则表达式ereg()eregi()用于简单的查询ereg_replace()eregi_replace()用于搜索替换,3、正则表达式的函数,ereg()eregi()用于简单的查询ereg(string pattern,string,source array)在原字符串中找到匹配,那么返回真,否则返回假eregi(string pattern,string,source array)匹配时忽略大小写,其它功能与ereg相同,3、正则表达式的函数,ereg函数以区分大小写的方式在 string 中寻找与给定的正则表达式 pattern所匹配的字符串找到与模式相匹配的子串将调用给第三个参数 匹配项将被存入第三个参数的数组中$array1 包含第一个左圆括号开始的子字符串$array2 包含第二个子字符串,以此类推$array0 包含整个匹配的字符串 实例 ereg.php,3、正则表达式的函数,ereg_replace(),eregi_replace用于搜索替换ereg_replace(string pattern,string replacement,string)在字符串中搜索制定模式如果匹配用参数替换eregi_replace 匹配时忽略大小写功能与ereg_replace一样实例 ereg_replace.php,3、正则表达式的函数,兼容perl风格的正则表达式Perl风格的模式,是在模式前后加上/斜杠比如/hello/posix风格用于操作使用unix场所的系统环境使用的 regex 风格取决于您过去在 regex 使用方面的经验和使用习惯有一些证据表明Perl表达式的速度比 POSIX 表达式要略微快一点绝大多数应用程序中,这一差别体现得不是那么明显练习:worktable.php,课堂重点,正则表达式的构成正则表达式中的特殊字符正则表达式的相关函数,谢 谢,http:/,