JavaRush /Blog Java /Random-VI /Cụm từ thông dụng: tìm một từ/một phần của từ
eGarmin
Mức độ

Cụm từ thông dụng: tìm một từ/một phần của từ

Xuất bản trong nhóm
Nếu bạn cần tìm một từ hoặc chuỗi con, một giải pháp tốt là sử dụng toán tử điều khiển từ bộ công cụ biểu thức chính quy . Nó không thể thiếu khi bạn cần tìm thứ gì đó nối tiếp thứ khác.
Ví dụ đơn giản
String str = "программируем"; Pattern p = Pattern.compile(".*программ(?=ируем).*"); Matcher m = p.matcher(str); if(m.matches()){ System.out.println("Нашел!"); }else{ System.out.println("Не нашел!"); }
1. Tìm kiếm từ phía trước
Trong ví dụ trên, nếu bạn cần tìm “programming” nhưng không cần tìm “programming” bạn nên sử dụng mẫu sau: .*программ(?=ируем).* ?= – tìm kiếm phía trước sự hiện diện của một từ/một phần của từ; ?! – tìm kiếm từ phía trước để tìm sự vắng mặt của một từ/một phần của từ.
2. Tìm kiếm từ phía sau
Tìm kiếm từ phía sau hoạt động theo cách tương tự. Bạn cần sử dụng ?<= để tìm kiếm một từ/một phần của từ đằng sau nó và ? .*(?<=programs)we.* Từ “chương trình” phù hợp với mẫu này, nhưng từ “đánh bóng” thì không.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION