1. 程式人生 > >利用正則表示式檢驗郵政編碼及電子郵件(E-MAIL)格式

利用正則表示式檢驗郵政編碼及電子郵件(E-MAIL)格式

1. 郵政編碼
 boolean checkPostcode(){
  Pattern p=Pattern.compile("[0-9]{6}");
  Matcher m=p.matcher(inputStr);
  if (!m.matches()){
   System.out.println("****郵政編碼格式不符!*****");
   return false;
  }
  return true;
 }
java.util.regex中有兩個類:Pattern和Matcher。
Pattern為模板,Matcher為被匹配者。
用Pattern去和比較(matches()),如果匹配成功,那麼就通過。
關於上面的程式可以參考Java的API中Pattern和Matcher類的說明。
介紹一下“[0-9]{6}”的意思。
[] 中括號指定允許匹配的字元,但是一個[]只能允許匹配單個字元。0-9表示0到9之間的任意數字,同樣A-Z就表示 A到Z之間的任意字母。{}大括號表示匹配次數,這裡就表示匹配6次,即必須有6個數字。

2.E-MAIL
 boolean checkEmail(){
  Pattern p=Pattern.compile("[0-9A-Za-z]
[email protected]
([0-9a-zA-Z]+.){1,2}(com|net|cn|com.cn)");
  Matcher m=p.matcher(inputStr);
  if(!m.matches()){
   System.out.println("****電子郵件格式不符!*****");
   return false;
  }
  return true;
 }
給出匹配的表示式:
“[0-9A-Za-z][email protected]([0-9a-zA-Z]+.){1,2}(com|net|cn|com.cn)”。