8 Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm. Learn more.
Tôi đang gặp khó khăn với trình phân tích cú pháp JSOUP. Làm thế nào tôi có thể biết nếu chuỗi đã cho là mã HTML hợp lệ? String input = "Your vote was successfully added."
boolean isValid = Jsoup.isValid(input);
// isValid = true
Cờ Isvalid là đúng, bởi vì JSOUP trước tiên sử dụng htmltreeBuilder: Nếu thiếu HTML, đầu hoặc thẻ cơ thể, nó sẽ tự thêm vào. Sau đó, nó sử dụng lớp sạch hơn và kiểm tra nó để chống lại danh sách trắng. Có cách nào đơn giản để kiểm tra xem Chuỗi có phải là HTML hợp lệ mà không có JSoup cố gắng làm cho nó HTML không? Ví dụ của tôi là phản hồi AJAX, là loại nội dung "Text/HTML". Sau đó, nó đi đến trình phân tích cú pháp, JSOUP thêm thẻ này và kết quả là phản hồi không được hiển thị đúng. Cảm ơn bạn đã giúp đỡ. Đã hỏi ngày 20 tháng 1 năm 2014 lúc 12:15Jan 20, 2014 at 12:15
Trước hết, giải pháp được đề xuất bởi Reuben không hoạt động như mong đợi. Mẫu phải được biên dịch với Cờ mẫu.DOTALL. Đầu vào HTML có thể có (và có thể sẽ) các dấu hiệu dòng mới, v.v. Vì vậy, nó phải là một cái gì đó như thế này: Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
Tôi cũng nghĩ rằng mẫu này nên tìm thẻ HTML không chỉ. Tiếp theo: không phải là tùy chọn hợp lệ duy nhất. Cũng có thể có thuộc tính tức là. Điều này cũng phải được xử lý. Tôi đã chọn sửa đổi nguồn JSoup. Nếu htmltreeBuilder (thực sự trạng thái trước khi đó<html> element I throw ParseException and then I am sure that input file was not a valid HTML file. Đã trả lời ngày 22 tháng 1 năm 2014 lúc 9:28Jan 22, 2014 at 9:28 user464592user464592user464592 2852 Huy hiệu vàng4 Huy hiệu bạc11 Huy hiệu đồng2 gold badges4 silver badges11 bronze
badges Sử dụng regex để kiểm tra String chứa HTML hoặc không boolean isHTML = input.matches(".*\\<[^>]+>.*");
Nếu String của bạn chứa giá trị HTML thì nó sẽ trả về true String input = "<html><body></body></html>" ;
Nhưng mã này Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
0 sẽ trả về Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
1 Đã trả lời ngày 20 tháng 1 năm 2014 lúc 13:34Jan 20, 2014 at 13:34 ReubenreubenReuben
5.4469 Huy hiệu vàng41 Huy hiệu bạc54 Huy hiệu đồng9 gold badges41 silver badges54 bronze badges 3 notempty Xác nhận rằng chuỗi không phải là null và không trống
Thất bạiValidate extends Object công khai tĩnh & nbsp; void & nbsp; fail (String & nbsp; msg) Gây ra thất bại. Tham số: String input = "<html><body></body></html>" ;
3 - Thông báo đến đầu ra. Ném: HTML 5 - Nếu chúng ta đạt đến trạng thái này
Tham số: String input = "<html><body></body></html>" ;
3 - Thông báo đến đầu ra. Ném: HTML 5 - Nếu chúng ta đạt đến trạng thái nàyPattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2Đối tượng ValidateExtends của lớp cuối cùng công khai Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2Đối tượng ValidateExtends của lớp cuối cùng công khai Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Trình xác nhận để kiểm tra các đối số phương thức đó đáp ứng mong đợi. Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Trình xác nhận để kiểm tra các đối số phương thức đó đáp ứng mong đợi. Tóm tắt Phương pháp Xác nhận rằng mảng không chứa các phần tử null Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Xác nhận rằng mảng không chứa các phần tử null Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Xác nhận rằng chuỗi không phải là null và không trống Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Xác nhận rằng chuỗi không phải là null và không trống Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Xác nhận rằng tham số chuỗi không phải là null và không trống Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống
Pattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngPattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngPattern htmlPattern = Pattern.compile(".*\\<[^>]+>.*", Pattern.DOTALL);
boolean isHTML = htmlPattern.matcher(input).matches();
2 Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống Tham số: String6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngboolean isHTML = input.matches(".*\\<[^>]+>.*");
6
WTFCông khai Static & NBSP; Void & NBSP; WTF (String & NBSP; MSG) Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngWTF Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngWTFCông khai Static & NBSP; Void & NBSP; WTF (String & NBSP; MSG) Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngWTFCông khai Static & NBSP; Void & NBSP; WTF (String & NBSP; MSG) Thổi lên nếu chúng ta đạt đến một trạng thái bất ngờ.WTFCông khai Static & NBSP; Void & NBSP; WTF (String & NBSP; MSG) Thổi lên nếu chúng ta đạt đến một trạng thái bất ngờ. Tham số: String input = "<html><body></body></html>" ;
3 - Thông điệp để suy nghĩ về những cú ném: HTML5 - Nếu chúng ta đạt đến trạng thái nàyThất bại void isTrue(boolean val) Trình xác nhận để kiểm tra các đối số phương thức đó đáp ứng mong đợi. Tóm tắt Phương pháp Tham số: String input = "<html><body></body></html>" ;
3 - Thông điệp để suy nghĩ về những cú ném: HTML5 - Nếu chúng ta đạt đến trạng thái nàyThất bại void isTrue(boolean val, String msg) Trình xác nhận để kiểm tra các đối số phương thức đó đáp ứng mong đợi. Tóm tắt Phương pháp Xác minh đối tượng đầu vào không phải là null và trả về đối tượng đó. Xác nhận rằng giá trị là sai void isFalse(boolean val) Đối tượng ValidateExtends của lớp cuối cùng công khai Trình xác nhận để kiểm tra các đối số phương thức đó đáp ứng mong đợi. Xác minh đối tượng đầu vào không phải là null và trả về đối tượng đó. Xác nhận rằng giá trị là sai void isFalse(boolean val, String msg) Xác nhận rằng giá trị là sai Tham số: <html> 1 - Đối tượng để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không ném ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu đối tượng không saikhông phải là ngườicông khai tĩnh & nbsp; void & nbsp; không phải là void noNullElements(Object[] objects) Xác nhận rằng mảng không chứa các phần tử null Tham số: String 1 - Mảng để kiểm tra ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu mảng chứa phần tử nullkhông phải là ngườicông khai tĩnh & nbsp; void & nbsp; không phải là void noNullElements(Object[] objects, String msg) Xác nhận rằng mảng không chứa các phần tử null Tham số: String 1 - Mảng để kiểm tra ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu mảng chứa phần tử nullcông khai tĩnh & nbsp; void & nbsp; không phải là Tham số: String 1 - mảng để kiểm tra String input = "<html><body></body></html>" ;
3 - thông báo sẽ bao gồm ngoại lệ nếu xác thực không số ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - nếu mảng chứa phần tử nullnotempty Xác nhận rằng chuỗi không phải là null và không trống Tham số: String 6 - Chuỗi để kiểm tra ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trốngnotemptyparamcông khai tĩnh & nbsp; void & nbsp; không phải là Tham số: String 1 - mảng để kiểm tra String input = "<html><body></body></html>" ;
3 - thông báo sẽ bao gồm ngoại lệ nếu xác thực không số ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - nếu mảng chứa phần tử nullnotempty Xác nhận rằng chuỗi không phải là null và không trống Tham số: String 6 - Chuỗi để kiểm tra ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống void wtf(String msg) notemptyparam Xác nhận rằng tham số chuỗi không phải là null và không trống Tham số: String6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
0 - Tên của tham số, để trình bày trong ngoại lệ xác thực. Ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống Tham số: String 6 - Chuỗi để kiểm tra String input = "<html><body></body></html>" ;
3 - Thông báo để đưa vào ngoại lệ nếu xác thực không thành công ném: boolean isHTML = input.matches(".*\\<[^>]+>.*");
8 - Nếu chuỗi là null hoặc trống void fail(String msg) WTF Công khai Static & NBSP; Void & NBSP; WTF (String & NBSP; MSG)
|