Tất cả các ký tự khác ngoài bảng chữ cái tiếng Anh (cả hai trường hợp) và chữ số (0 đến 9) được coi là ký tự không phải từ. Bạn có thể khớp chúng bằng metaký tự “\\W”.
Ví dụ 1
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String args[]) {
// Đọc chuỗi từ người dùng
System.out.println("Nhập một chuỗi");
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
String regex = "^\\W{5}";
// Biên dịch biểu thức chính quy
Pattern pattern = Pattern.compile(regex);
// Lấy đối tượng matcher
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
System.out.println("Khớp xảy ra");
} else {
System.out.println("Không khớp");
}
}
}
Kết quả 1
Nhập một chuỗi *&&^# Khớp xảy ra
Kết quả 2
Nhập một chuỗi hello Không khớp
Ví dụ 2
import java.util.Scanner;
public class RegexExample {
public static void main(String args[]) {
String regex = "\\W*";
System.out.println("Nhập giá trị đầu vào: ");
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
boolean bool = input.matches(regex);
if (bool) {
System.out.println("khớp xảy ra");
} else {
System.out.println("không khớp");
}
}
}
Kết quả
Nhập giá trị đầu vào: #*** khớp xảy ra