浅谈php正则表达式中的非贪婪模式匹配的使用

yipeiwu_com7年前PHP代码库

通常我们会这么写:

复制代码 代码如下:

$str = "http://www.baidu/.com?url=www.sina.com/";
preg_match("/http:(.*)com/", $str, $matches);
print_r($matches);

结果:

复制代码 代码如下:

Array ( [0] => http://www.baidu/.com?url=www.sina.com [1] => //www.baidu/.com?url=www.sina. )

非贪婪模式匹配:

复制代码 代码如下:

$str = "http://www.baidu/.com?url=www.sina.com/";
preg_match("/http:(.*?)com/", $str, $matches);
print_r($matches);

结果:

复制代码 代码如下:

Array ( [0] => http://www.baidu/.com [1] => //www.baidu/. )

简单的说只要在一个字符后面跟上限定个数的特殊字符,匹配就是非贪婪模式了。小伙伴们是否理解了呢?

相关文章

php中日期加减法运算实现代码

1、首先通过strtotime()获得日期的时间戳 2、获得N天前得时间戳,通过”当前时间戳 - N天的秒数 = N天前得时间戳“ 3、对N天前得时间戳用date()函数进行格式转换 下...

PHP实现按之字形顺序打印二叉树的方法

本文实例讲述了PHP实现按之字形顺序打印二叉树的方法。分享给大家供大家参考,具体如下: 问题 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序...

PHP安全性漫谈

PHP安全性漫谈

一、apache server安全性设置 1、以Nobody用户运行 一般情况下,Apache是由Root 来安装和运行的。如果Apache Server进程具有Root用户特权,那么它...

由php的call_user_func传reference引发的思考

问题的提出 网友bercmisir在院内留言,针对php手册中的call_user_func函数的文档一事,大致如下: http://php.net/manual/en/function...

PHP闭包函数详解

匿名函数也叫闭包函数(closures允许创建一个没有指定没成的函数,最经常用作回调函数参数的值。 闭包函数没有函数名称,直接在function()传入变量即可 使用时将定义的变量当作函...