实例287:利用正则表达式实现字符串的匹配查找
这是一个字符串匹配查找的实例
实例位置:光盘\mingrisoft\10\287
实例说明
PHP项目开发过程中,可以利用SQL语句中的关键字“like”对数据库中的内容进行匹配查找,但对于那些没有存储在数据库中的大量数据,用关键字“like”实现匹配查找相对困难,例如查找存储在POP3服务器中的邮件,使用like是无法实现的。为了解决上述问题,可以利用正则表达式实现匹配查找。运行本实例,将出现如图10.25所示的表单,在该表单中输入mr,单击“查找”按钮,将显示数组$array中所有含有关键字mr的字符串。
![]() |
| 图10.25 利用正则表达式实现字符串的匹配查找 |
技术要点
利用正则表达式对字符串进行匹配查找,可以通过函数preg_match()实现。
语法:
int preg_match ( string pattern, string subject [, array matches [, int flags]])
功能:
该函数用于实现在字符串subject中搜索与pattern中给出的正则表达式相匹配的内容。
实现过程
(1)建立如图10.25所示的表单。代码如下:
<form name="form1" method="post" action="index.php"> <div align="center" class="STYLE1">匹配查找</div></td> <div align="center">关键字:</div></td> <input type="text" name="key" class="inputcss" size="20"></td> <div align="center"><input name="submit" type="submit" value="查找" class="buttoncss"> |
$array=array(0=>'mrsoft',1=>'mrkj',2=>'jlmrkj',3=>'mingrisoft'); |
$key=$_POST[key]; |
上述代码中preg_match("/$key/i",$array[$i])实现字符串的匹配查找,正则表达式中的i表示实现不区分大小写的匹配查找。
举一反三
根据本实例,读者可以:
实现按邮件主题进行查找邮件。
匹配查找某数组中的内容。
| 回书目 上一节 下一节 |