2015-08-20 3 views
0

У меня есть регулярное выражение php для форматирования электронной почты. Я использовал этот код нижерегулярное выражение php pregmatch

if (!(preg_match('/^\[email protected][\w.\-]+\.[A-Za-z]{2,3}$/', $email))) : 
$err_email1 = "<div class = 'error'>Sorry, the email is not formatted   properly</div>"; 
$formerrors = true; 

Однако он не работает, когда в электронном письме есть период. т.е. [email protected] Он отлично работает с [email protected], поэтому я знаю, что это второй период.

Как я могу изменить код, чтобы он работал с 2-мя периодами? Я попробовал несколько вариантов, но не имел успеха.

Если у вас есть хороший сайт регулярного выражения php, я все глаза.

Благодаря

+0

PHP имеет встроенное регулярное выражение, доступное для 'filter_var()' и 'FILTER_VALIDATE_EMAIL', которое намного больше подходит для реального мира и адреса электронной почты. – mario

ответ

0

Попробуйте

/^([a-z0-9_.-]+)@([\da-z.-]+).([az.]{2, 6}) $/

+0

Спасибо. Это сработало. Я считаю, – kipper

+0

Это сработало, спасибо. В интересах других я имею в виду [a-z0-9 _.-] (слева от знака @) означает, что вы можете иметь любое количество точек. – kipper

+0

Спасибо. В интересах других это [a-z0-9 _.-] (слева от знака @) означает, что у вас может быть любое количество точек. Большое спасибо. – kipper

Смежные вопросы