You need at least one dot between the @ and the last character. You used to be able to say that you needed a . as either the third or fourth character from the end, but now that we have TLDs that aren’t two or three characters, you can’t be that specific.
What about ip6 address as a host? They don’t use dots. You can also specify a ip4 address as just a single number. Also there is a tld with an Mx record, which would mean there is no dots either. Best to just check for one or more characters before and after the at sign, then send an email to verify.
You need at least one dot between the @ and the last character. You used to be able to say that you needed a . as either the third or fourth character from the end, but now that we have TLDs that aren’t two or three characters, you can’t be that specific.
I believe that according to the RFC you can send mail to @localhost, the period is not strictly necessary
You are technically correct. (The very best kind of correct.)
What about ip6 address as a host? They don’t use dots. You can also specify a ip4 address as just a single number. Also there is a tld with an Mx record, which would mean there is no dots either. Best to just check for one or more characters before and after the at sign, then send an email to verify.