我正在瀏覽我們的舊網站文件和擁有我們的成員電子郵件和通信10年的數據。PHP - preg_match_all - 寬鬆的電子郵件匹配模式,允許空格和雙倍@
我正在提取所有的電子郵件地址(和僵化的電子郵件條目),並將它們添加到我們的新網站數據庫。
這是一個初學者嘗試cms,沒有錯誤檢查和驗證。
所以,我在使用空格和double @匹配電子郵件時遇到了麻煩。
果醬@水療ces1.com
果醬@ SPAC es2.com
果醬@@ doubleats.org
我已經建造這種鬆散的正則表達式是有意允許一大堆不正確的電子郵件格式,但是,上述三個例子是我無法弄清楚的。
這是我目前的「工作」代碼:
$pattern1= '([\s]*)([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*([ ]+|)@([ ]+|)([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,}))([\s]*)';
$pattern2='\b[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}\b';
$pattern="/$pattern1|$pattern2/i";
$isago = preg_match_all($pattern,$text,$matches);
if ($isago) {.......
我需要另一種模式,將允許三個電子郵件上面的例子被識別爲電子郵件地址。 (實際驗證後來)
此外,是否有任何其他模式,我可以使用,這將允許我識別文件中可能的電子郵件?
感謝您的任何幫助。
謝謝。我嘗試了一個非常類似的變化,但是,你教了我一些東西。謝謝! – 2012-01-18 13:20:18