2010-11-08 65 views
0
%\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b% 

如何使這個瞭解的PHPPerl的正則表達式到PHP

我想找到的所有電子郵件地址在HTML文檔

+0

與問題無關,但要指出電子郵件地址可以包含名稱中的撇號(例如John.O'[email protected])。 – Hamish 2010-11-08 19:58:22

回答

1

PHP支持Perl通過preg_replacepreg_match功能正則表達式。你根本不需要改變你的正則表達式。

+0

'preg_match_all'將生成所有匹配的列表。 http://www.php.net/manual/en/function.preg-match-all.php – Schwern 2010-11-08 20:45:13

0

你可能想要考慮adjusting your regex捕獲更多的地址。

+0

警告:preg_match_all()[function.preg-match-all]:分隔符不能是parser.php中的字母數字或反斜線on line 13 警告:在第15行的parser.php中爲foreach()提供的無效參數 Warning:implode()[function.implode]:第18行parser.php中傳遞的參數無效 \ b [A- Z0-9 ._%+ - ] + @ [A-Z0-9 .-] + \ [AZ] {2,4} \ b – Dasa 2010-11-08 20:05:41

+0

@Dasa您必須在其周圍放置分隔符,就像在Perl中一樣。 'preg_match('/ your pattern /')'見http://www.php.net/manual/en/regexp.reference.delimiters.php – Schwern 2010-11-08 20:44:44