php基础第9章.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
php基础第9章

第9章 正则表达式 学习要点: 1.正则表达式语法(Perl 风格) 2.正则表达式中的元素 3.Perl 风格函数 处理字符串时,有很多较为复杂的字符串用普通的字符串处理函数无法干净的完成。比如说,可能需要验证一个Email 地址是否合法,为此需要查看许多不容易检查的规则。这正是正则表达式的用武之地。正则表达式是功能强大而简明的字符组,其中可以包含大量的逻辑,特别值得一提的是正则表达式相当简短。 一.正则表达式语法(Perl风格) Perl 一直被认为是最伟大的解析语言之一,它提供了一种全面的正则表达式,即使是最复杂的字符串模式,也可以用这种正则表达式语言有哪些信誉好的足球投注网站和替换。PHP 开发人员认识到,与其重新发明正则表达式,不如让PHP 用户直接使用声名赫赫的Perl 正则表达式语言,即Perl风格的函数。 模式规则:/php/ 在字符串前后加上两条斜杠即可。 匹配函数:preg_match()函数在字符串中有哪些信誉好的足球投注网站模式,如果存在则返回true,否则返回false。 ?php preg_match(/php/,php); ? 二.正则表达式中的元素 正则表达式中包含三种元素分别为:量词、元字符、修饰符 量词 语法 描述 + 匹配任何至少包含一个前导字符 * 匹配任何包含零个或多个前导字符 ? 匹配任何包含零个或一个前导字符串 . 匹配任意一个字符 {x} 匹配任何包含x个前导字符串 {x,y} 匹配任何包含x到y个前导字符串 {x,} 匹配任何包含至少x个前导字符串 $ 匹配字符串的行尾 ^ 匹配字符串的行首 | 匹配字符串的左边或者右边 () 包围一个字符分组或定义个反引用,可以使用\1\2提取 元字符 语法 描述 [a-z] 匹配任何包含小写字母a-z的字符串 [A-Z] 匹配任何包含大写字母A-Z的字符串 [0-9] 匹配任何包含数字0-9的字符串 [abc] 匹配任何包含小写字母a、b、c的字符串 [^abc] 匹配任何不包含小写字母a、b、c的字符串 [a-zA-Z0-9_] 匹配任何包含a-zA-Z0-9和下划线的字符串 \w 匹配任何包含a-zA-Z0-9和下划线的字符串(同上) \W 匹配任何没有下划线和字母数字的字符串 \d 匹配任何数字字符,和[0-9]相同 \D 匹配任何非数字字符,和[^0-9]相同 \s 匹配任何空白字符 \S 匹配任何非空白字符 \b 匹配是否到达了单词边界 \B 匹配是否没有达到单词边界 \ 匹配正则中的特殊字符 修饰符 语法 描述 i 完成不区分大小写的有哪些信誉好的足球投注网站 m 在匹配首内容或者尾内容时候采用多行识别匹配 x 忽略正则中的空白 A 强制从头开始匹配 U 禁止贪婪匹配,只跟踪到最近的一个匹配符并结束 三.Perl风格函数 PHP 为使用Perl 兼容的正则表达式有哪些信誉好的足球投注网站字符串提供了7 个函数,包括:preg_grep()、preg_match()、preg_match_all()、preg_quote()、preg_replace()、preg_replace_callback()和preg_split()。 有哪些信誉好的足球投注网站字符串:preg_grep()函数有哪些信誉好的足球投注网站数组中的所有元素,返回由与某个模式匹配的所有元素组成的数组。 ?php $language = array(php,asp,jsp,python,ruby); print_r(preg_grep(/p$/,$language)); ? 有哪些信誉好的足球投注网站模式:preg_match()函数在字符串中有哪些信誉好的足球投注网站模式,如果存在则返回true,否则返回false。 ?php echo preg_match(/php[56]/,php5); ? 电子邮件验证地址小案例(分组应用) ?php $mode = /([\w\.\_]{2,10})@(\w{1,}).([a-z]{2,4})/; $string = $_POST[email]; echo preg_match($mode,$string); ? 替换模式的所有出现:preg_replace()函数有哪些信誉好的足球投注网站到所有匹配,然后替换成想要的字符串返回出来。 ?php echo preg_replace(/php[1-6]/,python,This is a php5,This is a php4); ? ubb 小案例:贪婪问题+分组使用() ?php $mode = /(\[b\])(.*)(\[\/b\])/; $replace = strong\2/strong; $string = This is a [b]php5[/b],This is a [b]php4[/b]; echo preg_replace($mode,$replace,$string)

文档评论(0)

aicencen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档