用正则表达式检查邮箱和密码的实例。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String ln;
BufferedReader rd = new BufferedReader(new InputStreamReader(System.in));
while ((ln = rd.readLine()) != null) {
boolean psswd, email;
psswd = isLegalPassword(ln);
email = isValidEmail(ln);
System.out.println("input=<" + ln + "> passwd? " + psswd
+ ", email? " + email);
}
}
static boolean isValidEmail(String email) {
String regex = "([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\\.[a-zA-Z0-9_-]{2,3}){1,2})";
Pattern pattern = Pattern.compile(regex);
Matcher mat = pattern.matcher(email);
return mat.matches();
}
static boolean isLegalPassword(String pswd) {
boolean ret = false;
String ftmt = "[0-9a-zA-Z_]{5,10}";
Pattern pattern = Pattern.compile(ftmt);
Matcher mat = pattern.matcher(pswd);
ret = mat.matches();
return ret;
}
}
参考http://outofmemory.cn/code-snippet/1255/java-regular-expression-review-string-shifou-match