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

yipeiwu_com5年前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/. )

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

相关文章

使用apache模块rewrite_module (转)

把 [url]http://wwww.aaaaaaaaa.com/... 的地址形式改为 [url]http://wwww.aaaaaaaaa.com/... 或者 [url]http:...

完美解决phpdoc导出文档中@package的warning及Error的错误

今天在编写PHPDoc的导出文档的时候发现一个很郁闷的错误,虽然这个warning不是什么重要错误,但是看着总是很不爽的。于是就去网上找了很多相关的资料,可是郁闷的是不知道是我用的PHP...

PHP源码之explode使用说明

当我们需要将一个数组根据某个字符或字串进行分割成数组的时候,explode用的很happy,但是你知道~explode是怎么工作的么~~ 首先可以肯定的是,explode也是会分配空间的...

php获取地址栏信息的代码

复制代码 代码如下:<?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br>"; //获取网页地址 echo $_SERVE...

php基于base64解码图片与加密图片还原实例

php基于base64解码图片与加密图片还原实例

本文实例讲述了php基于base64解码图片与加密图片还原的实现方法。分享给大家供大家参考。具体实现方法如下: 本例中$data是一段经过base64编码的图片。具体代码如下: 复制代码...