PHP preg_match正则表达式的使用
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-14 21:10:47 浏览: 评论:0
在php中preg_match()函数是用来执行正则表达式的一个常用的函数,下面我来给大家详细介绍preg_match使用方法.
函数用法:int preg_match_all ( string pattern, string subject, array matches [, int flags] )
例1,代码如下:
- <?php
- preg_match_all ("|<[^>]+>(.*)</[^>]+>|U","<b>example: </b><div align=left>this is a test</div>",$out, PREG_SET_ORDER);
- print $out[0][0].", ".$out[0][1]."n";
- print $out[1][0].", ".$out[1][1]."n";
- ?>
- //本例将输出:
- <b>example: </b>, example:
- <div align=left>this is a test</div>, this is a test
例2,URL 中取出域名,代码如下:
- <?php
- // 从 URL 中取得主机名
- preg_match("/^(http://)?([^/]+)/i", "http://www.phpfensi.com/index.html", $matches);
- $host = $matches[2];
- // 从主机名中取得后面两段
- preg_match("/[^./]+.[^./]+$/", $host, $matches);
- echo "domain name is: {$matches[0]}n";
- ?>
- //本例将输出:
- domain name is: phpfensi.com
preg_match字符串长度问题
preg_match正则提取目标内容,死活有问题,代码测得死去活来.
后来怀疑PHP 的preg_match有字符串长度限制,果然,发现“pcre.backtrack_limit ”的值默认只设了100000.
解决办法,代码如下:
ini_set('pcre.backtrack_limit',999999999);
注:这个参数在php 5.2.0版本之后可用.
另外说说关于:pcre.recursion_limit
pcre.recursion_limit是PCRE的递归限制,这个项如果设很大的值,会消耗所有进程的可用堆栈,最后导致PHP崩溃.
也可以通过修改配置来限制,代码如下:
ini_set('pcre.recursion_limit', 99999);
实际项目应用中,最好也对内存进行限定设置:ini_set('memory_limit','64M');,这样就比较稳妥妥嘎.
Tags: preg_match 正则表达式
相关文章
- ·php中正则获取url函数preg_match(2014-01-15)
- ·php中正则匹配中文汉字(2014-03-12)
- ·php正则表达式之preg_match()用法(2014-03-17)
- ·php正则指定字符串内容preg_match函数之说明(2014-08-06)
- ·PHP的preg_match_all正则字符多次出现第一次出代码(2014-08-06)
- ·PHP中preg_match_all函数正则匹配详解(2014-09-13)
- ·preg_match_all使用心得分享(2020-09-07)
- ·php中preg_match的isU代表什么意思(2021-06-19)
- ·PHP常用正则表达式汇总(2013-11-13)
- ·三分钟学会PHP正则表达式(2013-11-13)
- ·巧用PHP正则表达式判断IP地址(2013-11-13)
- ·如何用正则表达式来表示中文?(2013-11-27)
- ·常用的php正则表达式收集(2013-12-03)
- ·日期验证正则表达式(2013-12-11)
- ·php/js汉字正则表达式总结(2014-01-05)
- ·php如何对手机号码进行验证(2014-01-07)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)