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

Cách khớp một trong hai biểu thức cho trước dùng Java RegEx

Sử dụng toán tử logic OR | của biểu thức chính quy Java, bạn có thể khớp một trong hai biểu thức cho trước.

Ví dụ, nếu bạn cần biểu thức chính quy khớp với nhiều hơn một biểu thức, bạn có thể làm như vậy bằng cách tách các biểu thức yêu cầu bằng “|”.

Ví dụ 1

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

public class Example {
    public static void main(String args[]) {
        // Đọc chuỗi từ người dùng
        System.out.println("Nhập một chuỗi");
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();
        
        // Biểu thức chính quy khớp chuỗi bắt đầu bằng hello hoặc kết thúc bằng bye
        String regex = "^hello|bye$";
        
        // Biên dịch biểu thức chính quy
        Pattern pattern = Pattern.compile(regex);
        
        // Lấy đối tượng matcher
        Matcher matcher = pattern.matcher(input);
        if (matcher.find()) {
            System.out.println("Khớp xảy ra");
        } else {
            System.out.println("Không khớp");
        }
    }
}

Kết quả 1

Nhập một chuỗi hello how are you
Khớp xảy ra

Kết quả 2

Nhập một chuỗi This is a sample string
Không khớp

Ví dụ 2

import java.util.Scanner;

public class RegexExample {
    public static void main(String args[]) {
        // Biểu thức chính quy khớp yes hoặc no
        String regex = "yes|no";
        System.out.println("Nhập giá trị đầu vào: ");
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();
        boolean bool = input.matches(regex);
        if (bool) {
            System.out.println("khớp xảy ra");
        } else {
            System.out.println("không chấp nhận");
        }
    }
}

Kết quả 1

Nhập giá trị đầu vào: yes
khớp xảy ra

Kết quả 2

Nhập giá trị đầu vào: hello
không chấp nhận