当前位置:首页 > 日记 > 正文

PHP的正则表达式捕获和非捕获组(详细的解决方案)

PHP的正则表达式捕获和非捕获组(详细的解决方案)
正则表达式在项目开发过程中经常使用。可以说正则表达式是每个程序员最基本的要求。初学者很累的时候,他们刚刚接触正则表达式。最近,PHP正则表达式,一个朋友写的博客,受益很多,并在通道很感兴趣,在章的数据捕获。这两章还涉及到的捕捉和非内容捕获规则表达式组分析这方面的内容

我们知道,一个正则表达式在(x)是一个matching'x'and一个匹配值的记录的一种表示。这是一个比较流行的说法,甚至这是不严谨的,只有()的捕获组的形式将记录匹配的值。捕获组的比赛,不记录非。

捕获组:

(模式)

此表单是我们看到最多的表单,匹配和返回捕获结果可以嵌套,从左到右依次排列。

复制代码代码如下所示:

正则表达式=美元/(AB(C)+ D(E));

$str = 'abccde;

$ =数组();
如果(preg_match($ regex,$str,$matches)){

print_r($匹配);

}
匹配结果:

复制代码代码如下所示:

阵列({ 0 } { 1 } = = > > abccde ABCC { 2 } = { 3 } = > > C E)

(模式)
这种方式虽然在构造正则表达式时看起来有点复杂,但基本上与(模式)相同,最大的优点体现在结果处理中。程序员可以根据自己的设置直接而快速地调用结果,而不是计算前几个子组所需的结果。
复制代码代码如下所示:

正则表达式=美元/(P w(P w))ABC(P 45 / W);
$str = 'fsabcd45;

$ =数组();
如果(preg_match($ regex,$str,$matches)){

print_r($匹配);

}
匹配结果:

复制代码代码如下所示:

阵列({ 0 } {组} = > fsabcd45 = > FS { 1 } = { } = > > FS组的{ 2 } = { } = > >的3 D { 3 } = > D)


数值是一个对捕获组的反向引用的整数。例如,2代表匹配值的第二个子组,它代表第一个子组匹配值。
复制代码代码如下所示:

$正则表达式=( W)/( w) 2 1 ;

$str = 'abba;

$ =数组();
如果(preg_match($ regex,$str,$matches)){

print_r($匹配);

}
匹配结果:

复制代码代码如下所示:

阵列({ 0 } { 1 } = >阿爸= >一{ 2 } = > B)
注意,我漏掉了一个小细节。在开始的时候,我的第一个代码为正则表达式= /( w)( W) 2 1 /;返回的结果不匹配的结果,经过调试,发现它只能使用。我们需要注意的区别和用法。

◎K
这不难理解(模式)和是一个名为捕获组的反向引用。名称是捕获组的名称。
复制代码代码如下所示:

正则表达式=美元/(P w)ABC K ;
$str =fabcf ;
回声preg_match_all($ regex,$str,$matches);
print_r($匹配);
匹配结果:

复制代码代码如下所示:

阵列({ 0 } =阵列({ 0 } {姓名} = = fabcf)阵列({ 0 } = F){ 1 } =阵列({ 0 } = F))
非俘获群:

(::模式)

唯一的区别是(模式)与模式匹配,但没有捕获匹配结果。

我们实际上有四种方式谈论一件事:预览。

预考分为正向和反向的预检预检。按字面理解,正向查找是否有匹配的字符串后面的一些特点,和反向预览是确定是否有匹配的字符串前的一些特征。

积极的预判断存在(=模式),和判断不存在(!模式)。

反向预检判断存在(<=模式),和判断不存在(<!模式)。

复制代码代码如下所示:

regx美元= /(<=一)BC(= D);
$str =ABCD EBCD ABCE EBCA ;
如果(preg_match_all($ regx,$str,$matches)){
print_r($匹配);

}
匹配结果:

复制代码代码如下所示:

数组({ 0 } =数组({ 0 } = BC))
无论这四种形式是否被使用,只要注意相对匹配字符串的位置和断言的肯定或否定,就会很快掌握。

此外,前四种形式检查零宽度,只有一个判决时进行匹配是匹配的,而不是被本身。/他(= L)LLO / /火柴你好,和他(= L)罗/不匹配啊。毕竟,字节数是不匹配的,前者只有4,后者5。

以上是PHP正则表达式捕获组和非捕获组的全部内容,希望能对您有所启发。

相关文章

在javascript中获取和设置光标位置的方法

在javascript中获取和设置光标位置的方法

位置,设置,光标,方法,电脑软件,本文介绍了一种在javascript中获取和设置光标位置的方法,供大家参考: 在输入中经常遇到的项目开发将光标移动到最后一个问题,今天我检查眉目传情,发现在伊江,Firefox,Opera等主流浏览器获取光标位置(getcursortposition)和…

ppwerpoint演示印刷作为一个教程的

ppwerpoint演示印刷作为一个教程的

教程,作为一个,演示,课程,基础,作为一名记者,在演示前把你的PowerPoint演示文稿打印给观众。观众可以参考相应的手稿时,你所展示的,或者你可以参考在本手稿。如果你打印演示在讲义的形式,你可以把空白行在每一页的每一页为观众注意。下面,我们以…

在word文档中添加音乐文件的方法词

在word文档中添加音乐文件的方法词

文档,常见问题,方法,音乐文件,词中,问题:将音乐文件添加到word文档中的方法你可以在另一台机器上打开它,听! 答:打开MP3需要添加背景音乐的文档,单击视图菜单,页眉和页脚;进入页脚编辑区,单击插入菜单;;Windows媒体,player单击插入WMP;对象。 右键单击…

RPC、RMI和SOAP的详细解释

RPC、RMI和SOAP的详细解释

解释,详细,电脑软件,RPC,RMI,============================================================================ RPC与RMI的区别 ============================================================================ RPC:(远程过程调用) 它被…

知名人士,个人签名及签名经典签名

知名人士,个人签名及签名经典签名

知名人士,个人签名,经典,电脑软件,因为每个网民写不同的字,有谚语,谚语,调侃语句等,也用图片和动画作为签名,充满个性和风格各异。因此,它被称为个人签名。签名是一种视觉符号,代表个人信息和个人审美兴趣,如社会、法律、合同等,也称签名和签名。你…

教你用excelexcel表格输入各种数据

教你用excelexcel表格输入各种数据

方法,数据,输入,表格,教你用,Excel是微软办公系统的电子表格程序。你可以用Excel创建一个工作簿(收集电子表格)并设置工作簿的格式对数据进行分析,并做出更明智的业务决策。特别是,您可以使用Excel来跟踪数据,生成的数据分析模型,编制计算公式计…

2015快乐情人个性签名快乐个性签名

2015快乐情人个性签名快乐个性签名

个性签名,快乐,情人,电脑软件,约会,哇,我们下辈子会在一起的。 协议,我们必须在一起生活在下辈子 空虚的心,只有一个人你告诉我你拥有 空虚的心,只有一个人留给你的感觉 我多么希望一个疯子疯狂地爱我。 我多么希望有一个傻瓜,傻傻地爱着我。 事…

最具哲学和非主流人格签名非主流

最具哲学和非主流人格签名非主流

非主流,最具,人格,哲学,电脑软件,你是非主流会员,追求非主流是以下是非主流人格签名,赞一个。 1。总有一个人,一句对不起,让你心痛,刻骨铭心。 2。伤了心,忘了爱,拼了命,挽回不了曾经破碎的一次。 三.有没有人说你要放弃,但最终你还是不能放弃 4。解…

excel表格乘法函数公式的excel函数

excel表格乘法函数公式的excel函数

函数,乘法,公式,表格,电脑软件,以excel的形式,我们经常用excel公式来计算一些报告或数据。这时,我们需要使用加法、减法、乘法和除法。在前面,我们详细解释了excel求和以及如何使用差分公式,那么我们如何用公式来计算一些数据的乘法运算呢算出…

PS图象处理软件的恐怖女木偶木偶的

PS图象处理软件的恐怖女木偶木偶的

图象,处理软件,恐怖,电脑软件,PS,本教程介绍女朋友的傀儡木偶PS图象处理软件合成方法是非常可怕的,影响最终合成的教程很恐怖,作者也很详细,推荐这里,我们一起学习。 本教程主要是使用木偶木偶PS图象处理软件合成的恐怖,教程效果让人看起来很融…

将CDR转换成PSD分层层的详细步骤

将CDR转换成PSD分层层的详细步骤

步骤,转换成,详细,电脑软件,CDR,这里介绍了将CDR转化为PSD分层分层的具体步骤。这个教程很好。非常适合初学者学习。推荐朋友一起学习。 参与平面设计的小伙伴可能会被这些问题所困扰。如何将CDR文件转换成PSD格式的分层文件很多时候,我们在…

如何保护QQ空间使用安全QQ常见问题

如何保护QQ空间使用安全QQ常见问题

常见问题,空间,电脑软件,QQ,问:如何确保QQ空间安全使用 答:QQ空间需要加强QQ密码的安全使用保护,如黑客入侵,恶意黑客会利用你的QQ空间,从而影响你与朋友的关系和体验,所以请记住在QQ状态下时刻注意空间信息: 1、登录QQ和网络支持,手机和手机认证…