我在php(preg_match_all)中使用正则表达式时遇到了一些麻烦.
我使用以下代码查找由<>:封装的电子邮件,即:
preg_match_all("<[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})>:", $body,$matches);
Run Code Online (Sandbox Code Playgroud)
出于某种原因,PHP在冒号处爆炸,出现以下错误:
警告:preg_match_all()[function.preg-match-all]:未知修饰符':'in ...
任何帮助都将非常感激,因为我不是正则表达的大师,而且我只是脱毛了.
你需要使用delimeters EX:
preg_match_all('/<[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})>:/', $body,$matches);
Run Code Online (Sandbox Code Playgroud)
请参阅/我在两端添加的内容,告诉PHP正则表达式的开始和结束位置.