Java html的有效性

Java html的有效性,java,pattern-matching,Java,Pattern Matching,我想通过字符串输入完整的html,然后检查给定的字符串是否为有效的html 公共booleanisValidHTML(字符串htmlData) Description检查给定的HTML数据是否为有效的HTML数据 htmlData-字符串形式的HTML文档,包含标记和数据 如果给定的htmlData包含所有有效标记及其允许的属性和可能的值,则返回true,否则返回false。 有效的HTML: <html> <head> <title>

我想通过字符串输入完整的html,然后检查给定的字符串是否为有效的html

公共booleanisValidHTML(字符串htmlData)

Description检查给定的HTML数据是否为有效的HTML数据

htmlData-字符串形式的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**/
        }

页面标题
吉尔
史密斯
50
前夕
杰克逊
94
这篇文章是粗体的
java代码应该如下所示
类htmlValidator{
公共静态void main(字符串参数[]){
扫描仪输入=新扫描仪(系统输入);
字符串html=新字符串(“在此处传递html”);
isValidHtml(html)
}
公共静态布尔值isValidHtml(字符串html){
/**在这里写代码**/
/**如果给定的html有效,则方法返回true**
//**请帮忙**/
}

}

与其编写正则表达式来解析和检查(),不如使用类似的方法来解析它并检查错误

发件人:

String html=“第一次解析”
+“将HTML解析为文档。

”; Document doc=Jsoup.parse(html);
与其编写正则表达式来解析和检查(),不如使用类似的方法来解析它并检查错误

发件人:

String html=“第一次解析”
+“将HTML解析为文档。

”; Document doc=Jsoup.parse(html);
使用DOM解析器。可能的重复:如果你想为你接受的有效HTML定义自己的规则,你不仅需要成为那里的专家,还需要阅读一本关于编写解析器的书,这可能是最大的挑战。不过,你会学到很多在其他时候可能有用的知识,所以很高兴学习。另请参阅还有。对后者的回答是关于ANTLR,而不是我知道的一个工具,可能值得一看。我在搜索中发现了一系列关于用Java编写解析器的文章:。使用DOM解析器。可能重复:如果你想为你接受的有效HTML定义自己的规则,你不仅需要是那里的专家,还需要阅读一本关于wri的书ting parsers,这可能是更大的挑战。不过,你会学到很多在其他时候可能有用的东西,所以很高兴学习。另请参见和。后一个问题的答案是ANTLR,而不是我知道的工具,可能值得一看。我在搜索中发现了一系列关于用Java编写解析器的文章:。我认为你错了t这里。我想执行这个我自己定义的方法而不是预定义的方法。@shmosel Darn,我的偷偷摸摸的编辑还不够偷偷摸摸!太晚了一秒钟:)@RahulKashyap那你最好是HTML专家。这是HTML4还是HTML5?我想你搞错了。我想执行这个我自己定义的方法而不是预定义的方法。@shmosel Darn,我的朋友偷偷摸摸的编辑还不够偷偷摸摸!太晚了一秒钟:)@RahulKashyap那么你最好是HTML专家。这是HTML4还是HTML5?
String html = "<html><head><title>First parse</title></head>"
    + "<body><p>Parsed HTML into a doc.</p></body></html>";
Document doc = Jsoup.parse(html);