must not start/end with special characters i.e. should only start/end with [0-9a-zA-Z]

should still follow RFC specification for regular expression rules.

Currently the above one allows the email to start with special characters. Also it is allowing two consecutive full stops (except for domain name which is fine, so test@test..com fails and its correct).