我有一个regex电子邮件模式,我想从字符串中删除除模式匹配字符外的所有字符,简而言之,我想清除字符串。。。
我不是正则表达式专家,那么我在正则表达式中缺少什么呢?
<?php
$pattern = "/^([w!#$\%& *+-/=?^`{|}~]+.)*[w!#$\%& *+-/=?^`{|}~]+@((((([a-z0-9]{1}[a-z0-9-]{0,62}[a-z0-9]{1})|[a-z]).)+[a-z]{2,6})|(d{1,3}.){3}d{1,3}(:d{1,5})?)$/i";
$email = contact<>@domain.com ; // wrong email
$sanitized_email = preg_replace($pattern, NULL, $email);
echo $sanitized_email; // Should be contact@domain.com
?>
图案取自:http://fightingforalostcause.net/misc/2006/compare-email-regex.php(第一个…)