Java Regex - Lớp PatternSyntaxException
Giới thiệu
Các java.util.regex.PatternSyntaxException lớp đại diện cho một ngoại lệ không được kiểm tra được ném ra để chỉ ra lỗi cú pháp trong mẫu biểu thức chính quy.
Khai báo lớp
Sau đây là khai báo cho java.util.regex.PatternSyntaxException lớp học -
public class PatternSyntaxException
extends IllegalArgumentException
Người xây dựng
Sr.No | Phương pháp & Mô tả |
---|---|
1 | PatternSyntaxException(String desc, String regex, int index) Xây dựng một thể hiện mới của lớp này. |
Phương thức lớp
Sr.No | Phương pháp & Mô tả |
---|---|
1 | String getDescription() Truy xuất mô tả của lỗi. |
2 | int getIndex() Truy xuất chỉ số lỗi. |
3 | String getMessage() Trả về một chuỗi nhiều dòng chứa mô tả về lỗi cú pháp và chỉ mục của nó, mẫu biểu thức chính quy bị lỗi và chỉ báo trực quan về chỉ mục lỗi trong mẫu. |
4 | String getPattern() Truy xuất mẫu biểu thức chính quy bị lỗi. |
Các phương thức kế thừa
Lớp này kế thừa các phương thức từ các lớp sau:
- Java.lang.Throwable
- Java.lang.Object
Thí dụ
Ví dụ sau cho thấy việc sử dụng các phương thức lớp java.util.regex.Pattern.PatternSyntaxException.
package com.tutorialspoint;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
public class PatternSyntaxExceptionDemo {
private static String REGEX = "[";
private static String INPUT = "The dog says meow " + "All dogs say meow.";
private static String REPLACE = "cat";
public static void main(String[] args) {
try{
Pattern pattern = Pattern.compile(REGEX);
// get a matcher object
Matcher matcher = pattern.matcher(INPUT);
INPUT = matcher.replaceAll(REPLACE);
} catch(PatternSyntaxException e){
System.out.println("PatternSyntaxException: ");
System.out.println("Description: "+ e.getDescription());
System.out.println("Index: "+ e.getIndex());
System.out.println("Message: "+ e.getMessage());
System.out.println("Pattern: "+ e.getPattern());
}
}
}
Hãy để chúng tôi biên dịch và chạy chương trình trên, điều này sẽ tạo ra kết quả sau:
PatternSyntaxException:
Description: Unclosed character class
Index: 0
Message: Unclosed character class near index 0
[
^
Pattern: [