Java Biểu thức chính quy hỗ trợ 3 toán tử logic mà chúng là -
-
XY:X theo sau là Y
-
X | Y:X hoặc Y
-
(X):nhóm bắt.
XY:X theo sau là Y
Điều này chỉ khớp với hai ký tự liên tiếp.
Ví dụ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test {public static void main (String [] args) {Scanner sc =new Scanner (Hệ thống .trong); System.out.println ("Nhập văn bản đầu vào:"); Chuỗi đầu vào =sc.nextLine (); Chuỗi regex ="am"; // Tạo đối tượng mẫu Mẫu pattern =Pattern.compile (regex); // Khớp với mẫu đã biên dịch trong String Matcher matcher =pattern.matcher (input); if (matcher.find ()) {System.out.println ("Đã xảy ra trùng khớp"); } else {System.out.println ("Không xảy ra trùng khớp"); }}}
Đầu ra 1
Nhập văn bản đầu vào:văn bản mẫu Đã xảy ra đối sánh
Đầu ra 2
Nhập văn bản đầu vào:xin chào, bạn khỏe khôngX | Y
Điều này khớp với một trong hai biểu thức / ký tự xung quanh "|"
Ví dụ
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample {public static void main (String args []) {String regex ="Hello | welcome"; String input ="Xin chào, chào mừng bạn đến với Tutorialspoint"; Mẫu hoa văn =Pattern.compile (regex); Matcher matcher =pattern.matcher (đầu vào); int count =0; while (matcher.find ()) {count ++; } System.out.println ("Số trận đấu:" + count); }}Đầu ra
Số trận đấu:2(X):nhóm chụp
Một nhóm chụp cho phép bạn coi nhiều ký tự như một đơn vị duy nhất. Bạn chỉ cần đặt những ký tự này bên trong một tập hợp các dấu ngoặc đơn.
Ví dụ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CapturingGroups {public static void main (String args []) {System.out.println (" Nhập văn bản đầu vào "); Máy quét sc =Máy quét mới (System.in); Chuỗi đầu vào =sc.nextLine (); Chuỗi regex ="(. *) (\\ d +) (. *)"; // Tạo đối tượng Pattern pattern =Pattern.compile (regex); // Bây giờ tạo đối tượng matcher. Matcher matcher =pattern.matcher (đầu vào); if (matcher.find ()) {System.out.println ("Giá trị tìm thấy:" + matcher.group (0)); System.out.println ("Giá trị tìm thấy:" + matcher.group (1)); System.out.println ("Giá trị tìm thấy:" + matcher.group (2)); System.out.println ("Giá trị tìm thấy:" + matcher.group (3)); } else {System.out.println ("KHÔNG CÓ TRẬN ĐẤU"); }}}Đầu ra
Nhập văn bản đầu vào Dữ liệu mẫu có 1234 (chữ số) ở giữa Giá trị tìm:dữ liệu mẫu có 1234 (chữ số) ở giữa Giá trị tìm:dữ liệu mẫu có 123 Giá trị tìm:4 Giá trị tìm:(chữ số) ở giữa