Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Chương trình kiểm tra số điện thoại di động hợp lệ bằng biểu thức chính quy Java


Bạn có thể khớp một số điện thoại di động hợp lệ bằng biểu thức chính quy sau:

"\\d{10}"
  • Một số điện thoại di động hợp lệ thường có 10 chữ số (ở Ấn Độ).
  • Metacharacter \d khớp với các chữ số từ 0 đến 9.
  • Quantifier {n} chỉ định sự lặp lại chính xác n lần.

Ví dụ 1: Sử dụng Pattern và Matcher

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

public class PhoneNumberExample {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Nhập tên của bạn: ");
        String name = sc.nextLine();
        System.out.println("Nhập số điện thoại: ");
        String phone = sc.next();
        
        // Biểu thức chính quy cho số điện thoại hợp lệ (10 chữ số)
        String regex = "\\d{10}";
        
        // Tạo đối tượng Pattern
        Pattern pattern = Pattern.compile(regex);
        
        // Tạo đối tượng Matcher
        Matcher matcher = pattern.matcher(phone);
        
        // Kiểm tra tính hợp lệ
        if (matcher.matches()) {
            System.out.println("Số điện thoại đã cho là hợp lệ");
        } else {
            System.out.println("Số điện thoại đã cho không hợp lệ");
        }
    }
}

Kết quả 1

Nhập tên của bạn: krishna
Nhập số điện thoại: 9848022338
Số điện thoại đã cho là hợp lệ

Kết quả 2

Nhập tên của bạn: krishna
Nhập số điện thoại: 5465
Số điện thoại đã cho không hợp lệ

Kết quả 3

Nhập tên của bạn: krishna
Nhập số điện thoại: 984802354655
Số điện thoại đã cho không hợp lệ

Ví dụ 2: Sử dụng phương thức String.matches()

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Nhập số điện thoại: ");
        String phone = sc.next();
        
        // Biểu thức chính quy cho số điện thoại hợp lệ
        String regex = "\\d{10}";
        
        // Khớp trực tiếp với regex
        boolean result = phone.matches(regex);
        
        if (result) {
            System.out.println("Số điện thoại đã cho là hợp lệ");
        } else {
            System.out.println("Số điện thoại đã cho không hợp lệ");
        }
    }
}

Kết quả 1

Nhập số điện thoại: 9848022338
Số điện thoại đã cho là hợp lệ

Kết quả 2

Nhập số điện thoại: 123
Số điện thoại đã cho không hợp lệ

Kết quả 3

Nhập số điện thoại: 123654788755
Số điện thoại đã cho không hợp lệ