Java正則表達式實例

一、用正則表達式寫的簡單的注冊驗證,具體要求如下:

用戶注冊驗證(用戶名,密碼,昵稱,中文名字,手機號,郵箱)所有信息符合以下條件才允許注冊:

  1. 用戶名格式:由字母數(shù)字下劃線組成且開頭必須是字母,不能超過16位;
  2. 密碼格式:字母和數(shù)字構(gòu)成,不能超過16位;
  3. 昵稱:字母和數(shù)字構(gòu)成長度大于6小于10;
  4. 手機號:全數(shù)字,長度為11位;
  5. 郵箱:必須包含@符號;必須包含點;點和@之間必須有字符;

所有信息符合上述條件才允許注冊。

二、代碼如下:

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {

    public static void main(String[] args) {

        Pattern p = null;
        Matcher m = null;
        boolean flag = true;
        Scanner sc = new Scanner(System.in);

        System.out.println("------用戶注冊------");
        //匹配用戶名
        System.out.println("用戶名:   ---(由字母數(shù)字下劃線組成且開頭必須是字母,不能超過16位)");
        String name = sc.nextLine();
        p = Pattern.compile("[a-zA-Z]{1}[a-zA-Z0-9_]{1,15}");
        m = p.matcher(name);
        flag = m.matches();

        //匹配密碼
        System.out.println("密碼:---(字母和數(shù)字構(gòu)成,不能超過16位)");
        String pass = sc.nextLine();
        p = Pattern.compile("[a-zA-Z0-9]{1,16}");
        m = p.matcher(pass);
        flag = m.matches();

        //匹配昵稱
        System.out.println("昵稱:   ---(字母和數(shù)字構(gòu)成長度大于6小于10) ");
        String nicheng = sc.nextLine();
        p = Pattern.compile("[a-zA-Z0-9]{7,9}");
        m = p.matcher(nicheng);
        flag = m.matches();

        //匹配手機號
        System.out.println("手機號:   ---(全數(shù)字,長度為11位)");
        String phone = sc.nextLine();
        p = Pattern.compile("[0-9]{11}");
        m = p.matcher(phone);
        flag = m.matches();

        //匹配郵箱
        System.out.println("郵箱:   ---(必須包含@符號;必須包含點;點和@之間必須有字符)");
        String email = sc.nextLine();
        p = Pattern.compile("[@]{1}[a-zA-Z0-9]+[.]+[a-z]+");
        m = p.matcher(email);
        flag = m.matches();

        if(flag) {
            System.out.println("注冊成功");
        } else {
            System.out.println("信息填寫不正確!");
        }

        sc.close();

    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容