preg_replace,preg_match问题,请帮忙看看
最近想调用一个发送邮件的函数,于是在网上下载了一个smtp_mail.php的函数,函数编写的php版本比较低,都用的是ereg,ereg_replace.但是我现在的PHP版本比较高,因此需要用preg_match代替ereg,preg_replace代替ereg_replace,代替之后出现warning,由于之前也没用怎么学过正则表达式,麻烦大牛帮忙修改一下。
修改之前:$body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body);
修改之后:$body = preg_replace("(^|(\r\n))(\.)", "\1.\3", $body);
Warning: preg_replace(): Unknown modifier '(' in ......
$response = str_replace("\r\n", "", fgets($this->sock, 512));
修改之前:if (!ereg("^[23]", $response))
修改之后:if (!preg_match("^[23]", $response))
Warning: preg_match(): No ending delimiter '^' found in ......
$comment = "\([^()]*\)";
修改之前:ereg($comment, $address)
修改之后:preg_match($comment, $address)
Warning: preg_match(): Delimiter must not be alphanumeric or backslash in......
修改之前:$address = ereg_replace("([ \t\r\n])+", "", $address);
修改之后:$address = preg_replace("([ \t\r\n])+", "", $address);
Warning: preg_replace(): Unknown modifier '+' in ......
修改之前:$address = ereg_replace("^.*<(.+)>.*$", "\1", $address);
修改之后:$address = preg_replace("^.*<(.+)>.*$", "\1", $address);
Warning: preg_replace(): No ending delimiter '^' found in ......