《PHP程序开发》实验指导/实验三:PHP字符串和正则表达式 《PHP程序开发》实验指导 实验三:PHP字符串和正则表达式 实验目的(5分) 1、掌握PHP字符串的常用函数,包括比较、搜索、替换、分割等 2、理解正则表达式的概念 3、掌握正则表达式函数 二、实验环境(5分) 10操作系统的计算机; 2、局域网网络环境,并且使用固定IP地址。 三、实验要求(5分) 1、完成PHP字符串函数的使用 2、完成学号信息的显示; 3、完成正则表达式的使用 4、完成酒店预订信息的展示。 、实验原理(5分) 1、PHP字符串函数 2、PHP正则表达式的概念; 3、PHP正则表达式的使用 五、实验步骤(40分) 1、PHP字符串函数 (1)PHP字符串的函数有:计算字符串长度, strlen(O;单词统计, str word counto;清理空格, Itrim()、 rtrim(、 trimo;字符串的切分与组合, explode(、 stroke(O、 implode()、 join,截取, substr;替 换 substr replace;查找, strstr、 strstr;大小写的转换, strtolowerO、 strtoupper()、 ucfirsto、 ucwordso 比较大小 stroppo、 strcasecmp(O、 strncmpO、 strcasecmp( (2)删除字符串两边的空格,代码如sy5-1所示: ?php Sstrl="hello Sstr 2="aaaahelloa" echo trim(Sstr1). echo Itrim(Sstr 2, "a"). " echo trim(Sstr2, ah"). " (3)完成下述任务 任务一:如果$sx=”轻轻的我走了逗正如我轻轻地来[句我挥一挥衣袖逗]不带走一片云彩句 将$sr中的“”分别用”O”代替;将$sr中的“[逗]”用“,”代替,“[句”用“。”代替(10分) 要求 请将主要代码填写到实验报告册中。 学号的输出 创建一个网页,如图3-1所示,在网页上可以显示5个文本框,其中每个文本框的宽度为10 管理科学与工程学科/共4页第1页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 1 管理科学与工程学科 / 共4页,第1页 《PHP 程序开发》实验指导 实验三:PHP 字符串和正则表达式 一、实验目的(5 分) 1、掌握 PHP 字符串的常用函数,包括比较、搜索、替换、分割等; 2、理解正则表达式的概念; 3、掌握正则表达式函数。 二、实验环境(5 分) 1、Windows 10 操作系统的计算机; 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"); Snewarray l=preg grep("/n/", arr); print r(Snewarray l) echo" newarray 2=preg grep("/e+/", Sarr) print r(Snewarray2); sar2= array("123","12.34","1234","123.4","123."0.1234") Snewarray 3=preg grep("/((0-9+)?\(0-9+)S/", Sarr2) print r(Snewarray3) (3)效果如图3-2所示 管理科学与工程学科/共4第2页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 2 管理科学与工程学科 / 共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所示。 在线订房表 客户姓名 客户性别 到达时间:天后√ 其他需求,请填写到这里 其他需求 请确认订房信息 图3-3在线订房表 带有单们会发法封电子件到世的,如易外我 您的订房时间为:2018102115:3414 图3-4订房信息的显示 (1)完成下述任务 任务一:编写html页面,实现前台效果的显示(10分) 任务二:编写PHP程序,定义正则表达式验证邮件及电话信息,实现数据的处理与显示(10分); 要求 理科学与工程学科/共4页第3页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 3 管理科学与工程学科 / 共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、 str replace和 substr replace函数的区别?(5分 理科学与工程学科/共4页第4页
《PHP 程序开发》实验指导 / 实验三:PHP 字符串和正则表达式 4 管理科学与工程学科 / 共4页,第4页 请将主要代码填写到实验报告册中。 七、思考与问答(20 分) 1、如何实现字符串的翻转?(5 分) 2、如何取文件名的后缀,例如文件‘/as/image/bc.jpg’得到 jpg?(5 分) 3、如何使用正则表达式表示身份证号?(5 分) 4、str_replace()和 substr_replace()函数的区别?(5 分)