4.9 使用正则表达式分割字符串

另一个实用的正则表达式函数是split(),它的原型如下所示:


array split(string pattern,string search[,int max]);


这个函数将字符串search分割成符合正则表达式模式的子字符串,然后将子字符串返回到一个数组中。整数max指定进入数组中的元素个数。

该函数对分割电子邮件地址、域名或日期是非常有用的。例如:


$address="username@example.com";

$arr=split(".|@",$address);

while(list($key,$value)=each($arr)){

echo"<br/>".$value;

}


以上代码将主机名分割为5个部分并将它们分别输出到一行。


username

@

example

.

com


提示 一般而言,对于同样的功能,正则表达式函数运行效率要低于字符串函数。如果应用程序足够简单,那么就用字符串表达式。但是,对于可以通过单个正则表达式执行的任务来说,如果使用多个字符串函数,则是不对的。