Lớp java.util.regex.Matcher đại diện cho một công cụ thực hiện các phép khớp khác nhau. Không có constructor cho lớp này, bạn có thể tạo/nhận đối tượng của lớp này bằng phương thức matcher() của lớp java.util.regex.Pattern.
Phương thức start() của lớp Matcher trả về chỉ số bắt đầu của ký tự đã khớp.
Ví dụ
Biểu thức con "[...]" khớp các ký tự được chỉ định trong ngoặc trong chuỗi đầu vào. Trong ví dụ sau sử dụng để khớp ký tự t. Ở đây:
- Chúng ta đã biên dịch biểu thức chính quy bằng phương thức compile().
- Đã lấy đối tượng Matcher.
- Gọi phương thức find() trên mỗi khớp.
Ví dụ
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StartExample {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Nhập văn bản đầu vào: ");
String input = sc.nextLine();
String regex = "[t]";
// Tạo đối tượng pattern
Pattern pattern = Pattern.compile(regex);
// Khớp mẫu đã biên dịch trong chuỗi
Matcher matcher = pattern.matcher(input);
int count = 0;
while (matcher.find()) {
int start = matcher.start();
System.out.println(start);
}
}
}
Kết quả
Nhập văn bản đầu vào: Hello how are you welcome to Tutorialspoint 26 31 42
Vì ký tự t xuất hiện 3 lần trong chuỗi đầu vào, bạn có thể quan sát được 3 giá trị chỉ số (đại diện cho chỉ số của mỗi ký tự).