我想输入完整的html throgh字符串然后检查给定的sting是否是有效的html。
Public booleanisValidHTML(String htmlData)
描述 - 检查给定的HTML数据是否是有效的HTML数据
htmlData-一个包含TAGS和数据的字符串形式的HTML文档。
如果给定的htmlData包含具有允许属性及其可能值的所有有效标记,则返回true,否则返回false。 有效的HTML:
<html>
<head>
<title>Page Title</title>
</head>
<body>
<table style="width:100%">
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
</table>
<b>This text is bold</b>
</body>
</html>
The java code should look like
class htmlValidator{
public static void main(String args[]){
Scanner in =new Scanner(System.in);
String html=new String("pass the html here'');
isValidHtml(html)
}
public static boolean isValidHtml(String html){
/** write code here**/
/** method returns true if the given html is valid **
//**please help**/
}
}
答案 0 :(得分:2)
不是编写正则表达式来解析和检查(which is generally A Bad Idea),而是使用jsoup之类的东西来解析它并检查错误。
来自https://jsoup.org/cookbook/input/parse-document-from-string:
String html = "<html><head><title>First parse</title></head>"
+ "<body><p>Parsed HTML into a doc.</p></body></html>";
Document doc = Jsoup.parse(html);