Các lớp ký tự trong biểu thức chính quy Java được xác định bằng cách sử dụng dấu ngoặc vuông "[]", biểu thức con này khớp với một ký tự duy nhất từ tập hợp các ký tự có thể được chỉ định hoặc. Ví dụ:biểu thức chính quy [abc] khớp với một ký tự duy nhất a hoặc, b hoặc, c.
Biến thể liên hợp của lớp ký tự cho phép bạn đối sánh một ký tự từ một trong các phạm vi được chỉ định, tức là biểu thức [a-z [0-9]] khớp với một ký tự duy nhất là một bảng chữ cái nhỏ (a-z) hoặc một chữ số (0-9 ).
Ví dụ
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "[a-z[0-9]]"; //Creating a pattern object Pattern pattern = Pattern.compile(regex); //Matching the compiled pattern in the String Matcher matcher = pattern.matcher(input); int count =0; while (matcher.find()) { count++; } System.out.println("Number characters from the ranges (a-z or 0-9): "+count); } }
Đầu ra
Enter input text: sample DATA 12345 Number characters from the ranges (a-z or 0-9): 11