《PHP程序开发》实验指导/实验三:PHP字符串和正则表达式 《PHP程序开发》实验指导 实验三:PHP字符串和正则表达式 实验目的(5分) 1、掌握PHP字符串的常用函数,包括比较、搜索、替换、分割等; 理解正则表达式的概念 3、掌握正则表达式函数 二、实验环境(5分) 1、 Windows XP/Windows7操作系统的计算机; 2、局域网网络环境,并且使用固定IP地址 、实验要求(5分) 1、完成PHP字符串函数的使用 2、完成学号信息的显示; 3、完成正则表达式的使用 4、完成酒店预订信息的展 、实验原理(5分) 1、PHP字符串函数 2、PHP正则表达式的概念; 3、PHP正则表达式的使用 五、实验步骤(40分) 1、PHP字符串函数 (1)PHP字符串的函数有:计算字符串长度, strlen,单词统计, str word countO清理空格, Trims rerio、timO;字符串的切分与组合, explode、 stroke、 implode、 join(,截取, substr;替 换 substr replace;查找, strstr、 strstr;大小写的转换, strtolower()、 strtoupper()、 ucfirsto、 ucwordso 比较大小 stromlo、 strcasecmp(、 strncmpO、 strcasecmpo (2)删除字符串两边的空格,代码如sy5-1所示 echo Itrim(Sstr2, " a"). echo trim(Sstr 2, ah")." (3)完成下述任务 任务一:如果$sr=”轻轻的我走了逗]正如我轻轻地来[句我挥一挥衣袖[逗不带走一片云剃句”, 将$sr中的“”分别用”O”代替;将$sr中的“[逗]”用“,”代替,“[句”用“。”代替(10分)。 要求 请将主要代码填写到实验报告册中。 2、学号的输出 (1)创建一个网页,如图3-1所示,在网页上可以显示5个文本框,其中每个文本框的宽度为10 管理科学与工程学科/共4页第1页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 管理科学与工程学科 / 共 4 页,第 1 页 《PHP 程序开发》实验指导 实验三:PHP 字符串和正则表达式 一、实验目的(5 分) 1、掌握 PHP 字符串的常用函数,包括比较、搜索、替换、分割等; 2、理解正则表达式的概念; 3、掌握正则表达式函数。 二、实验环境(5 分) 1、Windows XP/Windows 7 操作系统的计算机; 2、局域网网络环境,并且使用固定 IP 地址。 三、实验要求(5 分) 1、完成 PHP 字符串函数的使用; 2、完成学号信息的显示; 3、完成正则表达式的使用; 4、完成酒店预订信息的展示。 四、实验原理(5 分) 1、PHP 字符串函数; 2、PHP 正则表达式的概念; 3、PHP 正则表达式的使用。 五、实验步骤(40 分) 1、PHP 字符串函数。 (1)PHP 字符串的函数有:计算字符串长度,strlen();单词统计,str_word_count();清理空格,ltrim()、 rtrim()、trim();字符串的切分与组合,explode()、stroke()、implode()、join();截取,substr();替 换,substr_replace();查找,strstr()、stristr();大小写的转换,strtolower()、strtoupper()、ucfirst()、ucwords(); 比较大小,strcmp()、strcasecmp()、strncmp()、strcasecmp()。 (2)删除字符串两边的空格,代码如 sy5-1 所示: "; echo ltrim($str2,"a").""; echo trim($str2,"ah").""; ?> (3)完成下述任务。 任务一:如果$str=”轻轻的我走了[逗]正如我轻轻地来[句]我挥一挥衣袖[逗]不带走一片云彩[句]”, 将$str 中的“[]”分别用”()”代替;将$str 中的“[逗]”用“,”代替,“[句]”用“。”代替(10 分)。 要求: 请将主要代码填写到实验报告册中。 2、学号的输出 (1)创建一个网页,如图 3-1 所示,在网页上可以显示 5 个文本框,其中每个文本框的宽度为 10
《PHP程序开发》实验指导/实验三:PHP字符串和正则表达式 个字符,最多可输入的字符个数也为10,当点击提交按钮后,可以显示所有学生的学号(注意:每 个学生的学号以“,”分割,且如果输入相同的学号只显示1遍),然后找到16级学生的学号(前缀 为2016181),将其前缀改为“16信管”,并将他们的学号输出。 (2)完成下述任务 任务一:编写代码完成上述要求中学号的输出,如图3-1所示(20分) 件(F)编辑(E)查看(收藏夹(A)工具(T帮助(H 请输入学号 提交 2016181001,2016181002,2016181003,2016181004 16级信管的学生有: 16信管001,16信管002,16信管003,16信管004 图3-1学号的输出 要求 请将主要代码填写到实验报告册中 3、正则表达式 (1)熟悉正则表达式,掌握 preg match, preg match all) preg replace,preg split, preg grepo函数 的用法 (2)返回匹配的数组单元和sy5-3php所示 Sarr=array("name","need", " college", " history"); Snewarrayl=preg grep("/ n/",Sarr) print r(Snewarrayl) echo" Snewarray2=preg grep("/e+/",Sarr) print r(Snewarray 2); echo "' sar2= array("123""12.34","1234","123.4","123.;"0.1234") Snewarray 3=preg_grep"/((0-9+)?(10-9+)S/", Sarr 2); print r(Snewarray3): (3)效果如图3-2所示: 管理科学与工程学科/共4页第2页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 管理科学与工程学科 / 共 4 页,第 2 页 个字符,最多可输入的字符个数也为 10,当点击提交按钮后,可以显示所有学生的学号(注意:每 个学生的学号以“,”分割,且如果输入相同的学号只显示 1 遍),然后找到 16 级学生的学号(前缀 为 2016181),将其前缀改为“16 信管”,并将他们的学号输出。 (2)完成下述任务。 任务一:编写代码完成上述要求中学号的输出,如图 3-1 所示(20 分) 图 3-1 学号的输出 要求: 请将主要代码填写到实验报告册中。 3、正则表达式 (1)熟悉正则表达式,掌握 preg_match(),preg_match_all(),preg_replace(),preg_split(),preg_grep()函数 的用法。 (2)返回匹配的数组单元和 sy5-3.php 所示: sy5-3: "; $newarray2=preg_grep("/e+/",$arr); print_r($newarray2); echo ""; $arr2=array(".123","12.34","1234","123.4","123.","0.1234"); $newarray3=preg_grep("/^([0-9]+)?\.([0-9]+)$/",$arr2); print_r($newarray3); ?> (3)效果如图 3-2 所示:
《PHP程序开发》实验指导/实验三:PHP字符串和正则表达式 文件(F编辑(E)查看(收藏夹(A)工具⑦帮助(H Array([0]=>name [1]=>need) Aray([0]→name[1→need[2]→ college) Aray([0j→.1231→12.34[3]→1234[5]=0.1234) 图3-2网页显示 (4)完成下述任务 任务一:参考上述代码,使用正则表达式函数,判断字符串“oh, my love”里是否含有“love”, 如果是,则输出“匹配成功”,否则,输出“匹配失败”。(5分) 任务二:使用正则表达式,编写代码,实现:将字符串“ PHP is web language”,将单词分隔,并 输出。(5分) 要求 请将主要代码填写到实验报告册中。 六、自主实验(20分) 1、创建酒店系统在线订房表,效果如图3-3和图3-4所示。 在线订房表 客户姓名 客户性别 到达时间:天后√ email 其他需求,请填写到这里 其他需求 请确认订房信息 图3-3在线订房表 您订的房间已上传,确认您的房间信息如下 含鉴禁为们发子的 您的订房时间为:2018102115:3414 图3-4订房信息的显示 (1)完成下述任务。 任务一:编写html页面,实现前台效果的显示(10分) 任务二:编写PHP程序,定义正则表达式验证邮件及电话信息,实现数据的处理与显示(10分); 要求: 管理科学与工程学科/共4页第3页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 管理科学与工程学科 / 共 4 页,第 3 页 图 3-2 网页显示 (4)完成下述任务。 任务一:参考上述代码,使用正则表达式函数,判断字符串“oh,my love”里是否含有“love”, 如果是,则输出“匹配成功”,否则,输出“匹配失败”。(5 分) 任务二:使用正则表达式,编写代码,实现:将字符串“PHP is web language”,将单词分隔,并 输出。(5 分) 要求: 请将主要代码填写到实验报告册中。 六、自主实验(20 分) 1、创建酒店系统在线订房表,效果如图 3-3 和图 3-4 所示。 图 3-3 在线订房表 图 3-4 订房信息的显示 (1)完成下述任务。 任务一:编写 html 页面,实现前台效果的显示(10 分); 任务二:编写 PHP 程序,定义正则表达式验证邮件及电话信息,实现数据的处理与显示(10 分); 要求:
《PHP程序开发》实验指导/实验三:PHP字符串和正则表达式 请将主要代码填写到实验报告册中。 七、思考与问答(20分) 1、如何实现字符串的翻转?(5分) 2、如何取文件名的后缀,例如文件‘as/ Image/ bc. jpg得到jpg?(5分) 3、如何实现中文字符串截取无乱码?(5分) 4、如何使用正则表达式表示身份证号?(5分) 管理科学与工程学科/共4页第4页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 管理科学与工程学科 / 共 4 页,第 4 页 请将主要代码填写到实验报告册中。 七、思考与问答(20 分) 1、如何实现字符串的翻转?(5 分) 2、如何取文件名的后缀,例如文件‘/as/image/bc.jpg’得到 jpg?(5 分) 3、如何实现中文字符串截取无乱码?(5 分) 4、如何使用正则表达式表示身份证号?(5 分)