Computer >> Máy Tính >  >> Lập trình >> Java

Cách đối sánh phần đầu của một chuỗi / dòng cụ thể bằng cách sử dụng Java RegEx

Ký tự meta “^” khớp với phần đầu của một chuỗi cụ thể, tức là nó khớp với ký tự đầu tiên của chuỗi. Ví dụ,

  • Biểu thức “ ^ \\ d ”Khớp với chuỗi / dòng bắt đầu bằng một chữ số.

  • Biểu thức “ ^ [a-z] ”Khớp với chuỗi / dòng bắt đầu bằng bảng chữ cái viết thường.

Ví dụ 1

 import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Ví dụ {public static void main (String args []) {// Đọc chuỗi từ hệ thống của người dùng .out.println ("Nhập một chuỗi"); Máy quét sc =Máy quét mới (System.in); Chuỗi đầu vào =sc.nextLine (); Chuỗi regex ="^ [^ a-zA-Z0-9 // s]. *"; // Biên dịch biểu thức chính quy Mẫu pattern =Pattern.compile (regex); // Truy xuất đối tượng matcher Matcher matcher =pattern.matcher (input); if (matcher.matches ()) {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 # bắt đầu bằng ký tự đặc biệt Đã xảy ra đối sánh 

Ví dụ 2

 import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample {public static void main (String args []) {String regex ="\\. $ "; Máy quét sc =Máy quét mới (System.in); System.out.println ("Nhập 5 chuỗi nhập:"); String input [] =new String [5]; for (int i =0; i <5; i ++) {input [i] =sc.nextLine (); } // Tạo đối tượng Pattern Mẫu p =Pattern.compile (regex); for (int i =0; i <5; i ++) {// Tạo đối tượng Matcher Matcher m =p.matcher (input [i]); if (m.find ()) {System.out.println ("Chuỗi" + i + "kết thúc bằng '.'"); }}}} 

Đầu ra

 Nhập 5 chuỗi đầu vào:xin chào bạn khỏe không. bạn sống ở đâu, tên bạn là gì. chào mừng bạn đến với điểm hướng dẫnThư viện hướng dẫn trực tuyến lớn nhất. Chuỗi 0 kết thúc bằng '.' Chuỗi 2 kết thúc bằng '.' Chuỗi 4 kết thúc bằng '.' 

Ví dụ 3

 import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample {public static void main (String args []) {String regex ="^ [A-Z ] "; Máy quét sc =Máy quét mới (System.in); System.out.println ("Nhập 5 chuỗi nhập:"); String input [] =new String [5]; for (int i =0; i <5; i ++) {input [i] =sc.nextLine (); } // Tạo đối tượng Pattern Mẫu p =Pattern.compile (regex); for (int i =0; i <5; i ++) {// Tạo đối tượng Matcher Matcher m =p.matcher (input [i]); if (m.find ()) {System.out.println ("Chuỗi" + i + "bắt đầu bằng chữ in hoa"); }}}} 

Đầu ra

 Nhập 5 chuỗi nhập:Văn bản mẫu1sample text2hello Chào mừng bạn đến với hướng dẫn