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

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

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

相关文章

THINKPHP在添加数据的时候获取主键id的值方法

在使用ThinkPHP新增数据后可以很方便的获取自动增长型的主键值。 $Model = D(‘Blog'); $data['name'] = 'test'; $data['tit...

ThinkPHP 表单自动验证运用示例

使用TP 3.2框架 public function add_post(){ //验证规则 $rule=array( array('name','require','请输入姓名',...

PHP实现文件下载断点续传详解

如果我们的网站提供文件下载的服务,那么通常我们都希望下载可以断点续传(Resumable Download),也就是说用户可以暂停下载,并在未来的某个时间从暂停处继续下载,而不必重新下载...

PHP5多态性与动态绑定介绍

什么是多态性? 多态性是继数据抽象和继承后,面向对象语言的第三个特征。从字面上理解,多态的意思是“多种形态”,简单来说,多态是具有表现多种形态的能力的特征,在OO中是指“语言具有根据对象...

PHP页面跳转操作实例分析(header方法)

本文实例分析了PHP页面跳转操作。分享给大家供大家参考,具体如下: 跳转 header()为php函数,向浏览器发送指定命令 html: <meta http-equiv="...