首页 » PHP和MySQL Web开发(原书第4版) » PHP和MySQL Web开发(原书第4版)全文在线阅读

《PHP和MySQL Web开发(原书第4版)》4.7 用正则表达式查找子字符串

关灯直达底部

查找子字符串是正则表达式的主要应用。在PHP中,可以使用的并且用于匹配POSIX风格正则表达式的两个函数是ereg和eregi。ereg函数原型如下所示:

int ereg(string pattern,string search,array[matches]);

该函数搜索字符串search,在pattern中寻找与正则表达式相匹配的字符串。如果发现了与pattern的子表达式相匹配的字符串,这些字符串将会存储在数组matches中,每个数组元素对应一个子表达式。

函数eregi除了不区分大小写外,其他功能与ereg一样。

可以使用如下所示的代码对智能表单例子进行修改:

if(!eregi('^[a-zA-Z0-9_/-/.][email protected][a-zA-Z0-9/-]+/.[a-zA-Z0-9/-/.]+$',$email)){

echo"<p>That is not a valid email address.</p>".

<p>Please return to the previous page and try again.</p>";

exit;

}

$toaddress="[email protected]";//the default value

if(eregi("shop|customer service|retail",$feedback))

$toaddress="[email protected]";

}else if(eregi("deliver|fulfill",$feedback)){

$toaddress="[email protected]";

}else if(eregi("bill|account",$feedback)){

$toaddress="[email protected]";

}

if(eregi("bigcustomer/.com",$email)){

$toaddress="[email protected]";

}