background image

PHP 正则表达式之正则处理函数小结

(preg_match,preg_match_all,preg_replace,preg_s

plit)

  本节我们就来介绍一下

PHP 中基于 perl 的正则表达式处理函数,主要包含了分割, 匹

配,查找,替换等等处理操作,依旧是配合示例讲解,让我们开始吧
前面我们已经学习了正则表达式的基础语法,包括了定界符、原子、元字符和模式修正

 符。

实际上正则表达式想要起作用的话,就必须借用正则表达式处理函数。本节我们就来介绍一

PHP 中基于 perl 的正则表达式处理函数,主要包含了分割, 匹配,查找,替换等等处理

操作,依旧是配合示例讲解,让我们开始吧。

 

 
  和正则表达式一样,正则表达式处理函数不能够独立使用,而这必须相结合,才能够
完成特定的功能。在前面我们也说过,基于

perl 的正则表达式要快于 POXIS 正则表达式处

理函数,所以我们只介绍以

preg 开头的基于 perl 的正则表达式。注意:在能偶使用字符串

函数处理的时候,就不要使用正则表达式来处理字符串,因为字符串处理函数更快。

 

 
下面我们来看一些常用的正则表达式处理函数。

 

 
1,preg_match()函数。 
 
函数

preg_match()执行一个正则表达式匹配,其定义如下: 

 
int preg_match ( string 

$pattern

 , string 

$subject

 [, 

array

 &

$matches

 [, int 

$flags

 = 0 [, int 

$offset 

= 0 ]]] ) 
 
实际上就是搜索

subject 中匹配 pattern 的部分, 以保存在数组 matches 中.请看示例: 

代码如下

:

 
<?php 

$pattern

 = '/<b>.*?<\/b>/'; 

$string

 = '<b>welcome</b> <b>to</b> <b>phpfuns</b>dsadsadas'; 

if

 (preg_match(

$pattern

$string

$arr

)) { 

echo

 "正则表达式<b>{$pattern}</b>和字符串<b>{$string}</b>匹配成功<br>"; 

print_r(

$arr

); 

else

 { 

echo

 "<font color='red'>正则表达式{$pattern}和字符串{$string}匹配失败</font>";