PHP中基于Perl的正则表达式处理函数
像正则表达式正则表达式处理功能,不能单独使用,而必须结合来实现特定的功能。正如我们前面提到的,基于Perl的正则表达式正则表达式处理功能比poxis更快,所以我们只介绍基于Perl的正则表达式从怀孕了。注意:不要使用正则表达式来处理当你可以使用一个字符串字符串函数处理字符串,因为字符串处理函数更快。
让我们看看一些常用的正则表达式处理函数。
1、本preg_match()函数。
功能preg_match()执行一个正则表达式匹配,它的定义如下:
国际preg_match(字符串的模式字符串$ {数组$matches { int,int = 0美元标志{,} } }偏移= 0美元)
事实上,它是搜索与该模式匹配的主题的一部分,以便保存在数组匹配中。看例子:
< PHP
美元=;
欢迎来到phpfunsdsadsadas字符串=美元;
如果(preg_match(美元美元美元模式字符串,ARR)){
正则表达式{ $ }和字符串{ } }匹配成功;
print_r($ ARR);
{人}
正则表达式{ $ }和字符串{ } }匹配失败;
}
>
2、本preg_match_all()函数。
功能preg_match_all()函数执行一个全球性的正则表达式匹配,其定义是一致的preg_match()函数,但只有比赛结果。请看例子:
< PHP
美元=;
欢迎来到phpfunsdsadsadas字符串=美元;
如果(preg_match_all(美元美元美元模式字符串,ARR)){
正则表达式{ $ }和字符串{ } }匹配成功;
print_r($ ARR);
{人}
正则表达式{ $ }和字符串{ } }匹配失败;
}
>
还是上面的例子(仅常规处理功能preg_match_all()),但匹配结果的数组是不一样的。
3、preg_replace()函数
功能preg_replace()执行一个正则表达式替换,它的定义如下:
混合preg_replace(混合模式混合替代美元,美元,美元,美元的混合主体{ int,极限= 1 { int,$count )
事实上,它在主题中寻找与模式匹配的部分。它被替换。限制是指每个主题每种模式的最大替换次数。默认值是- 1(无穷大)。如果指定了计数,它将被填充为完成的次数。
小心 uff1a
一,如果对象是一个数组,preg_replace()返回一个数组,然后返回一个字符串在其他情况下。
B,如果找到匹配项,则替换主题返回,在其他情况下则返回主题。如果出现错误,则不更改为null。
C,该模式可以应用于参数替换,这是用在(在正则表达式模式中,我们只能使用得到匹配的子模式,切记!)
d,如果使用模式修饰符E,可以解析参数替换。(在其他正则表达式处理函数中,模式修饰符E被忽略)!
请看下面的综合例子:
< PHP
$模式=/(PHP)|(MySQL)/ E;
字符串中的PHP和MySQL被替换为大写字母!;
结果= preg_replace美元(合模式,'strtoupper($ { 1 } 2 ),为字符串,1美元算);
返回结果;
回波计数;
>
在这个例子中,我们使用一个模式的改性剂,然后strtoupper()可以作为一个字符串进行解析,这是E改性剂的作用方式!虽然参数$ { 1 }和 2分别是1和2子模式模式,这是与PHP的子模型相匹配的字符串$和MySQL替换大写字母的作用!
4、本preg_split()函数。
preg_split执行一个正则表达式分隔字符串,定义如下:
阵列preg_split(字符串的字符串模式,$ { int,int = 1美元限制{,旗帜= 0美元)
事实上,主体分为模式还分阵列。其中,限制将限制由分离得到最大极限的子串,并返回的最后一个子字符串将包含所有剩余的部分。限制值为1, 0或NULL,表示没有限制。
让我们看一个例子:
< PHP
$模式=。*);
这个字符串中的PHP和MySQL是分开的!;
结果= preg_split美元(美元的模式,为字符串,1,preg_split_delim_capture);
print_r($结果);
>
在这个例子中,我们使用一个恒定的子模式包含preg_split_delim_capture集合返回(如果设置为preg_split_no_empty,preg_split(非空)将该部分分离后返回。如果我们把这些正则表达式)括号去掉,PHP和MySQL两匹配成功的子模式是不包括在结果。
我们通常介绍正则表达式处理函数。本节的示例可能有点困难。但我希望您仍然能够认真地测试和理解,在正则表达式应用程序部分之后,我们将经常使用正则表达式来处理函数。
以上内容是一个小编辑器,介绍基于PHP的基于Perl的正则表达式处理函数,希望能对您有所帮助。