我有一個簡單的正則表達式來查找文本中的電子郵件地址,但即使我沒有看到錯誤,它也不起作用。使用preg_match簡單電子郵件地址檢查
$addr=array();
$t='Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean fermentum risus id tortor. Morbi leo mi, nonummy eget tristique non, rhoncus non leo. Donec quis nibh at felis congue commodo. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos [email protected] Aliquam [email protected] ornare wisi eu metus.';
if(preg_match_all('~[A-Z0-9._%-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}~',$t,$addr, PREG_SET_ORDER)){
echo 'found';
}
我自己也嘗試這個版本,我發現,但它沒有工作,要麼:
if(preg_match_all('/^[A-Z0-9._%-][email protected][A-Z0-9._%-]+\.[A-Z]{2,4}$/',$t,$addr, PREG_SET_ORDER)){
對,我忘了「我」修改,但沒有thi你的代碼真的適合你嗎? – user965748
您沒有將a-z添加到最後一部分。 –
<?php $ addr = array(); $ t ='Lorem ipsum dolor sit amet,consectetuer adipiscing elit。 Aenean fermentum risus id tortor。 Morbi leo mi,nonummy eget tristique non,rhoncus non leo。在felis爭論商品時,Donec quis nibh。每個conubia nostra類別,每個inceptos hymenaeos [email protected]。 Aliquam [email protected] ornare wisi eu metus。'; (preg_match_all('〜[a-zA-Z0-9 ._% - ] + @ [a-zA-Z0-9 .-] + \。[a-zA-Z] {2,4}〜' ,$ t,$ addr,PREG_SET_ORDER)){ echo'found'; } ?> – user965748