第四章字符串与正则表达式课件

上传人:我*** 文档编号:139028450 上传时间:2020-07-19 格式:PPT 页数:31 大小:47.50KB
返回 下载 相关 举报
第四章字符串与正则表达式课件_第1页
第1页 / 共31页
第四章字符串与正则表达式课件_第2页
第2页 / 共31页
第四章字符串与正则表达式课件_第3页
第3页 / 共31页
第四章字符串与正则表达式课件_第4页
第4页 / 共31页
第四章字符串与正则表达式课件_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《第四章字符串与正则表达式课件》由会员分享,可在线阅读,更多相关《第四章字符串与正则表达式课件(31页珍藏版)》请在金锄头文库上搜索。

1、第四章 PHP字符串操作 与正则表达式,目的与要求,理解字符串的定义 掌握并熟练应用PHP中字符串的连接、分割、比较、查找和替换等操作 掌握PHP的正则表达式操作,4.1 字符串的定义,字符串:由零个或者多个字符组成的有限序列,也就是n(n=0)个字符的集合。 功能:字符串最常用的功能是人机对话,告诉用户发生了什么,以及下一步需要做什么。 书写格式:写在成对的单引号或双引号中。例: $text_a=”This is a test message”,4.2 字符串的格式化,1.chop() 函数语法:string chop(string $string,string $charlist) 函数作

2、用:去除字符串尾部的空格等特殊字符,如果指定了第2个参数,则去除字符串尾部中的由第2个参数指定的字符。 例:echo chop(“ Im a php programmer. ”);,2.ltrim(),函数语法:string ltrim(string $str,string $charlist) 函数作用:去除字符串头部的空格等特殊字符,如果指定了第2个参数,则去除字符串头部中的由第2个参数指定的字符。 例:echo ltrim(“ Im a php programmer. ”);,3.trim(),函数语法:string trim(string $str,string $charlist)

3、函数作用:去除字符串头部和尾部的空格等特殊字符,如果指定了第2个参数,则去除字符串头部和尾部中的由第2个参数指定的字符。 例:echo trim(“ Im a php programmer. ”);,4.2.2 addslashes()和stripslashes(),addslashes() 函数语法:string addslashes(string str) 函数作用:使用反斜线引用字符串。 例:echo addslashes(“Blind Mans Holiday”);,stripslashes(),函数语法:string stripslashes(string) 函数作用:与addsla

4、shes()相反,把转义符取消 例:echo stripslashes(“whos Kaijim?”);,strtoupper (),函数语法:string strtoupper (string $string) 函数作用:将字符串string的字母全部以大写字母的形式返回 例:echo strtoupper (“PHPer”);,strtolowerr (),函数语法:string strtolower (string $string) 函数作用:将字符串string的字母全部以小写字母的形式返回 例:echo strtolower (“PHPer”);,4.3 字符串的连接和分割,expl

5、ode() 函数语法:array explode(string $separator,string $string,int $limit) 函数作用:将字符串string用$separator来分割,每出现一次$separator,就多出一个由两个$separator之间的字符组成的字符串元素,函数最后的返回值是一个数组。,implode()和join(),这两个函数是explode()反功能的函数。 函数语法:string implode(string $glue,array $pieces) 函数作用:把数组的各元素合称为一个用$glue连接起来的字符串。 例:implode(“,”,$a

6、rea),strtok(),使用strtok()函数可以将一个大字符串切割成小的字符串。 函数语法:string strtok(string $str,string $token) 函数作用:字符串$str用字符串$token的值切开成小段小段的字符串,返回$token第一次出现前的部分子字符串,substr(),函数语法:string substr(string $string,int $start,int $length) 函数作用:取得字符串$string从$start开始的$length长度的子字符串,如果没有$length参数,则取到$string的最后一个字符。 注意:$strin

7、g字符串的各字符位置从0开始,4.7 正则表达式简介,正则表达式(regular expression) 用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。 首先正则表达式是一个字符串,在这个字符串内,可以设定一些规则,正则表达式就可以根据已经设定好的内容,对指定的字符串进行替换或匹配操作。 如:“ab+”描述的特征一个a和任意个b,ab、abb、abbbb,正则表达式的用途,验证字符串是否符合指定特征 用来查找字符串 用来替换 如:验证邮件地址A?,正则表达式的构成,普通字符 例如:大写、小写字母、所有数字、所有标点符号 非打印字符 例如:f n r s 特殊字符(

8、又称元字符) $ () * + ? | 例如:“*”表示任何字符串 PhP中正则表达式的写法: “/expression/”,下面列出几个简单的正则表达式。,d6:表示一个由6位数字组成的字符串。 A-Za-z0-9:匹配所有大写字母、小写字母及0到9的数字。 open:表示以open开始的字符串。 something$:表示以something结尾的字符串。 a-zA-Z:表示一个以字母开头的字符串。 go2:表示字母g后面跟着2个o即:goo。,常用特殊字符,(1)“” 插入符 /first/ 表示检测字符串是否以 first 开头 (2)“$” 美元符 /end$/ 表示检测字符串是否以

9、 end 结尾 (3)”.” 点号。 点号是用来匹配除了换行符之外的任意字符 /e.d/ 表示检测字符串是否匹配字符e加一个任意字符和字符d (4)”-” 短横线。短横线被称为范围界定字符 /0-9/ 表示字符串是否匹配任何数字 0-9 非数字 (5)”|” 管道元字符 /(a|b)/ 表示字符串含有字符a或字符b (6) n,m 这里的n和m都是正整数。匹配至少n个最多m个前面的字符。 例如:/a 1,3 /匹配 “candy,”中的a,“caandy,” 中的前面两个 。,w 意义:匹配所有的数字和字母以及下划线,等价于A-Za-z0-9_。 W 意义:匹配除数字、字母外及下划线外的其它字

10、符,等价于A-Za-z0-9_。 d 匹配一个数字字符。等价于 0-9。 D 匹配一个非数字字符。等价于 0-9。 $pattern = “/aa/i”; i表示不区别大小写n 意义:匹配一个换行符 r 意义:匹配一个回车符,PHP的正则表达式操作,字符匹配: preg_match();如果匹配,返回1,也就是true,否则返回0,也就是false. $aa=preg_match(/hi/,fdfhi ,china”); echo $aa; / 1,字符替换:,preg _replace() echo preg_replace(“/hi/i”,“zuoyefeng”,“HI ,china ph

11、p”); /zuoyefeng ,czuoyefengna php i表示不区别大小写,获得与模式匹配的数组单元,Preg_grep 函数语法:array preg_grep(string $pattern,array $input,int $flags) 函数说明:返回一个包括了input数组中与给定的pattern模式相匹配单元的新数组。,进行全局正则表达式的匹配,函数语法:int preg_match_all(string $pattern,string $subject,array $matches,int $flags) 函数说明:在subject中搜索所有与pattern给出的正则

12、表达式匹配的内容,并将结果以上flags指定的顺序放到数组matches中。搜索到第一个匹配项之后,接下来的搜索从上一个匹配项末尾开始。,进行正则表达式的匹配,preg_match 函数语法:int preg_match(string $pattern,string $subject,array $matches,int $flags) 函数说明:在subject字符串中搜索与pattern给出的正则表达式相匹配的内容。如果提供了matches,则它会被搜索的结果所填充。 $aa=preg_match(/hi/,fdfhi ,china”,$word); echo $aa; / 1 Print

13、_r($word);,转义正则表达式:preg_quote,函数语法:string preg_quote(string $str,string $delimiter) 函数说明:以str为参数并给其中每个属于正则表达式语法的字符前面加上一个反斜线。如果需要以动态生成的字符串作为模式去匹配,则可以用此函数转义其中可能包含的特殊字符。,执行正则表达式的搜索和替换函数:preg_replace,函数语法:mixed preg_replace(mixed $pattern,mixed $replacement,mixed $subject,int $limit) 函数说明:在subject中搜索pat

14、tern模式的匹配项并替换为replacement。如果指定里limit,则仅替换limit个匹配,如果省略limit或者其值为-1,则所有的匹配项都会被替换。 $a=hi,china; echo preg_replace(/hi/,hello,$a);,通过回调函数执行搜索和替换:preg_replace_callback,函数语法:mixed preg_replace_callback(mixed $pattern,callback $callback,mixed $subject,int $limit) 函数说明:以目标字符串中的匹配数组作为输入参数,并返回用于替换的字符串。,用正则表达式进行字符串分割:preg_split,函数语法:array preg_split(string $pattern,string $subject,int $limit,int $flags) 函数说明:返回一个数组,包含subject中沿着与pattern匹配的边界所分割的子串。如果指定了limit,则最多返回limit个子串,如果limit是-1,则意味着没有限制,可以用来继续指定可选参数flags。,4.9 正则表达式的Web验证,电子邮件地址的校验 多字节字符的校验 URL地址的校验 电话号码和邮政编码的校验,验证手机号码,

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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