/*
Date : 12 October 2013
Author : Shivam Tiwari [shivamtiwari1011@gmail.com]
Organization : http://mycodedock.blogspot.in/
Description : http://mycodedock.blogspot.in/2013/10/validating-e-mail-string-java.html
*/
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main{
public static void main
(String[] args
){
//declaring required variables
String inputString, findPattern
;
//creating a new Scanner object
Scanner scannerObj
= new Scanner
(System.
in);
/*
Email starts with alpha numeric characters ([_A-Za-z0-9-])
MAY (optional) have a . followed by alphanumeric characters, underscore & - (\\.[_A-Za-z0-9-] + ) { as in shivam.tiwari93@gmail.com}
followed by @ and some alphanumeric characters, _ , - @[A-Za-z0-9] { as in @gmail}
followed by . and some alphanumeric characters only (\\.[A-Za-z0-9]+) { as in .com}
MAY have secondary string after . of alphanumeric type only ((\\.[A-Za-z]{2,})) {like .co.in} minimum length is 2
*/
findPattern = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
System.
out.
println("Enter your e-mail id : ");
//get inputString
inputString = scannerObj.nextLine();
//create a pattern object
Pattern patternObj = Pattern.compile(findPattern);
//create a matcher object
Matcher matcherObj = patternObj.matcher(inputString);
if(matcherObj.find()){
System.
out.
println("This is a valid e-mail id : " + inputString
); }
else{
System.
out.
println("This is NOT a valid e-mail id : " + inputString
); }
}
}