gpt4 book ai didi

PHP preg match正则表达式函数的操作实例

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章PHP preg match正则表达式函数的操作实例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

在php中preg_match()函数是用来执行正则表达式的一个常用的函数。正则表达式几乎在所有编程语言里面都会用到,本实例介绍php中正则表达式preg_match函数的应用.

preg_match() 函数用于进行正则表达式匹配,成功返回 1 ,否则返回 0 .

preg_match() 匹配成功一次后就会停止匹配,如果要实现全部结果的匹配,则需使用 preg_match_all() 函数.

语法:

?
1
preg_match (pattern , subject, matches)

  。

参数 描述
pattern 正则表达式
subject 需要匹配检索的对象
matches 可选,存储匹配结果的数组

  。

实例:

此实例匹配大写字母后面带有.和空格的字符串,只能匹配到J. ,因为preg_match() 匹配成功一次后就会停止匹配,后面不会再匹配了.

?
1
2
3
4
5
6
<?php
$str = "Daniel J. Gross Catholic High School A. is a faith and family based community committed to developing Christian leaders through educational excellence in the Marianist tradition." ;
if (preg_match( "/[A-Z]. /" , $str , $matches )){
print_r( $matches );
}
?>

输出结果:

Array ( [0] => J. ) 。

下面给大家介绍preg_match字符串长度问题 。

preg_match正则提取目标内容,死活有问题,代码测得死去活来.

后来怀疑PHP 的preg_match有字符串长度限制,果然,发现“pcre.backtrack_limit ”的值默认只设了100000.

解决办法:

?
1
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'); , 这样就比较稳妥妥嘎.

最后此篇关于PHP preg match正则表达式函数的操作实例的文章就讲到这里了,如果你想了解更多关于PHP preg match正则表达式函数的操作实例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com