Prevent multiple registrations from the same email using + character Gmail and other email services allow users to extend their address using the + (plus) character.
For example, mail to

spamme@gmail.com
spamme+sideways@gmail.com
spamme+tomorrow@gmail.com

will all be receivable by the owner of spamme@gmail.com
In its default configuration, Drupal 7 would allow the owner of spamme@gmail.com to register 3 separate accounts using the 3 addresses above... and more if they want!
I would like to prevent this type of multiple registration.
While I could just create a rule that blacklists email addresses containing the + character, there are legitimate uses of this.
I would prefer to be able to check for other equivalent email addresses, where in the above example, all 3 addresses are equivalent, because they are all collectable by spamme@gmail.com, and allow only one of them.
Is there some way to do that?
Check email before register user with add your custom validator in hook_form_alter, then check user email without +secondpart :

As a Example you can Try something like this (I didn't test this but it can give you a good clue to achieve what you want ) 

 function YOURMODULENAME_form_alter(&amp;$form, &amp;$form_state, $form_id){
       if ($form_id == "user_register_form") {
            // add your custom validator
            $form['#validate'][] = 'my_custom_email_validate';
       }
     }


in your custom validator check it with regular expression

function my_custom_email_validate($form, $form_state, $form_id){
    // dpm($form_state['values']);
    $mail = $form_state['values']['mail'];
    preg_match_all('/(.*)\+.*(@.*)/',$mail,$matches);
if($matches){
    // this mean it has  xxx+xx@xxx pattern
    $clean_mail = $matches[1][0].$matches[2][0];
    $user_load = user_load_by_mail($clean_mail);
    if($user_load){
        form_set_error('mail',t('Sorry,This email used before.don\'t waste your time dear spammer'));
        return false;
 }
}