Biểu thức con / siêu ký tự “ \ E ”Kết thúc phần trích dẫn bắt đầu bằng \ Q. tức là bạn có thể thoát khỏi các siêu ký tự trong biểu thức chính quy bằng cách đặt chúng ở giữa \ Q và \ E. Ví dụ:biểu thức [aeiou] khớp với các chuỗi có các chữ cái nguyên âm trong đó.
Ví dụ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class SampleProgram {public static void main (String args []) {String regex ="[aeiou] "; Máy quét sc =Máy quét mới (System.in); System.out.println ("Nhập chuỗi nhập:"); Chuỗi đầu vào =sc.nextLine (); // Tạo đối tượng Pattern Mẫu pattern =Pattern.compile (regex); Matcher matcher =pattern.matcher (đầu vào); 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
Nhập chuỗi đầu vào:sampleMatch đã xảy ra
Tuy nhiên, nếu bạn sử dụng cùng một biểu thức với trong \ Q và \ E là \ Q [aeiou] \ E Nó khớp với cùng một chuỗi ký tự “[aeiou]” trong chuỗi đã cho. Tóm lại, các ký tự meta mất đi ý nghĩa của chúng và sẽ được coi như các ký tự bình thường.
Ví dụ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class SampleProgram {public static void main (String args []) {String regex ="\\ Q [aeiou] \\ E "; Máy quét sc =Máy quét mới (System.in); System.out.println ("Nhập chuỗi nhập:"); Chuỗi đầu vào =sc.nextLine (); // Tạo đối tượng Pattern Mẫu pattern =Pattern.compile (regex); Matcher matcher =pattern.matcher (đầu vào); 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 chuỗi đầu vào:sampleMatch không xảy ra
Đầu ra2
Nhập chuỗi đầu vào:Các chữ cái [aeiou] là các nguyên âm trong bảng chữ cái tiếng Anh