/*
Date : 11 October 2013
Author : Shivam Tiwari [shivamtiwari1011@gmail.com]
Organization : http://mycodedock.blogspot.in/
Description : http://mycodedock.blogspot.in/2013/10/validate-username-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);
//password MUST have a-z and 0-9 and A-Z and either @ or # or $ or % or ^ or * (special characters)
//password must be 10 - 20 characters long
findPattern = "((?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^*]).{10,20})";
System.
out.
println("Enter your chosen password : ");
//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 password : " + inputString
); }
else{
System.
out.
println("This is NOT a valid password : " + inputString
); }
}
}