PHP正则表达式求解
$body = ereg_replace("(^|(\r\n))(\\.)", "\\1.\\3", $body); 上面的这个是邮件发送类email.class.php sendmail()方法第二行的一个正则,请问("(^|(\r\n))(\\.)" 的“^|”到底匹配了什么家伙出来?如何理解?
追问:邮件的内容里怎么也不会有“|”出现在开始的地方吧?!这个正则表达式是否多余了这个匹配替换?
$body = ereg_replace("(^|(\r\n))(\\.)", "\\1.\\3", $body); 上面的这个是邮件发送类email.class.php sendmail()方法第二行的一个正则,请问("(^|(\r\n))(\\.)" 的“^|”到底匹配了什么家伙出来?如何理解?
追问:邮件的内容里怎么也不会有“|”出现在开始的地方吧?!这个正则表达式是否多余了这个匹配替换?
答案:^在[]之外时匹配字符串起始或行起始
(^|(\r\n))这个整体就是匹配内容开始位置或行起始位置
上一个:php采集原理和抓取远程内容最简单的教程
下一个:求php的学习路线图