PHP正则表达式个人笔记总结

本文转自IT摆渡网欢迎转载,请标明出处。
摆渡网

更多php文章请阅读

php问题解决

  开头的 ^ 和结尾的 $ 让PHP从字符串开头检查到结尾。假使没有 $,程序仍会匹配到 Email 的末尾。

  [ 和 ] 被用来限制许可输入类型。例如 a-z 允许所有的小写字母,A-Z 允许所有的大写字母,0-9 所有数字,等等,以及更多其他类型。

  { 和 } 被用来限制期望的字符数。例如 {2,4} 表示字符串的每一节可以有 2-4 字符长度,像是 .com.cn 或 .info。在这里, “.” 并不算一个字符,因为 {2,4} 之前定义的许可输入类型只有大小写字母,故此段只匹配大小写字母

  ( 和 ) 被用来合并小节,并定义字符串中必须存在的字符。(a|b|c) 能够匹配 a 或 b 或 c。

  (.) 将匹配所有字符,而 [.] 只匹配 “.” 本身。

  要使用一些符号本身,必须在前增加一个\。这些字符有:( ) [ ] . * ? + ^ | $

  附:PCRE 语法指南

  / 定界符

  ^ 字符串头

  $ 字符串尾

  [a-z] 所有小写字母

  [A-Z] 所有大写字母

  [0-9] 所有数字

  ? 零或一个紧接前的字符

  * 零或多个紧接前的字符

  + 一或多个紧接前的字符

  {4} 4个紧接前的字符

  {4,8} 4-8个紧接前的字符

  . 任意字符

  (red|green|blue) Red 或 green 或 blue(红 或 绿 或 蓝)

  s 空格

  特殊字符(需要在前加)

  ( ) [ ] . * ? + ^ | $

  规则匹配 preg_match

  利用 preg_match(),我们可以完成字符串的规则匹配。如果找到一个匹配,preg_match() 函数返回 1,否则返回 0。还有一个可选的第三参数可以让你把匹配的部分存在一个数组中。在验证数据时这个功能可以变得非常有用。

  $string = “football”;

  if (preg_match(‘/foo/’, $string)) {

  // 匹配正确

  }

  规则替换 preg_replace

  preg_replace 允许你替换字符串中匹配到你定义的正则表达式。

  $val = "/*123456789*/abcd";

  $pp = preg_replace("/[(\/\*)+(.)(\*\/)+]+/",'fuck',$val);

  print_r($pp);

  结果是

  fuck123456789fuckabcd

  规则分割preg_split

  preg_split 可以将整段字符串按匹配到的正则表达式分割成 1、2或更多字符的多段。比如获取标签,无论是用空格还是逗号分隔的:

  $tags = preg_split('/[,]/', 'my,tags,unevenly,spaced');

  print_r($tags);

  结果是:

  Array ( [0] => my [1] => tags [2] => unevenly [3] => spaced )

阅读了这篇文章的人还阅读了

php+mysql分页原理案例分析
php把HTML代码转换成文本输出的方法
如何设置访问index.php/index.html的时候自动切换到顶
提供PHP问题错误修改服务
PHP出现错误的查错方法总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值