Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

โปรแกรมตรวจสอบหมายเลขมือถือที่ถูกต้องด้วย Java Regular Expressions


คุณสามารถจับคู่หมายเลขมือถือที่ถูกต้องได้โดยใช้ Regular Expression ดังต่อไปนี้:

"\\d{10}"
  • หมายเลขมือถือที่ถูกต้องโดยทั่วไปจะมี 10 หลัก (ในอินเดีย)
  • Metacharacter "\d" จะจับคู่ตัวเลข 0 ถึง 9
  • Quantifier "{n}" ระบุการซ้ำของ pattern ก่อนหน้า n ครั้ง

ตัวอย่างที่ 1: ใช้ Pattern และ 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("Enter your name: ");
        String name = sc.nextLine();
        System.out.println("Enter your Phone number: ");
        String phone = sc.next();
        
        // Regular expression สำหรับหมายเลขโทรศัพท์ที่ถูกต้อง
        String regex = "\\d{10}";
        
        // สร้าง Pattern object
        Pattern pattern = Pattern.compile(regex);
        
        // สร้าง Matcher object
        Matcher matcher = pattern.matcher(phone);
        
        // ตรวจสอบว่าเบอร์โทรศัพท์ที่ให้มาถูกต้องหรือไม่
        if (matcher.matches()) {
            System.out.println("Given phone number is valid");
        } else {
            System.out.println("Given phone number is not valid");
        }
    }
}

Output 1

Enter your name: krishna
Enter your Phone number: 9848022338
Given phone number is valid

Output 2

Enter your name: krishna
Enter your Phone number: 5465
Given phone number is not valid

Output 3

Enter your name: krishna
Enter your Phone number: 984802354655
Given phone number is not valid

ตัวอย่างที่ 2: ใช้ String.matches()

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter your Phone number: ");
        String phone = sc.next();
        
        // Regular expression สำหรับหมายเลขโทรศัพท์ที่ถูกต้อง
        String regex = "\\d{10}";
        
        // จับคู่เบอร์โทรศัพท์กับ regular expression
        boolean result = phone.matches(regex);
        
        if (result) {
            System.out.println("Given phone number is valid");
        } else {
            System.out.println("Given phone number is not valid");
        }
    }
}

Output 1

Enter your Phone number: 9848022338
Given phone number is valid

Output 2

Enter your Phone number: 123
Given phone number is not valid

Output 3

Enter your Phone number: 123654788755
Given phone number is not valid