html

2017-01-18 39 views
0

的有效性我想輸入完整的html throgh字符串,然後檢查給定的sting是否是有效的html。html

公共booleanisValidHTML(字符串htmlData)

說明 - 檢查是否一個給定的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**/ 
     } 

}

+1

使用DOM解析器。 – Mordechai

+2

可能的重複:http://stackoverflow.com/questions/4392505/how-to-validate-html-from-java –

+0

如果你想爲你接受的有效HTML定義自己的規則,你不僅需要那裏的專家,你還需要閱讀一本關於編寫解析器的書,這可能是更大的挑戰。儘管如此,你會學到很多有用的知識,以便學習。 –

回答

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); 
+1

我想你有錯誤的[鏈接](http://stackoverflow.com/a/1732454/1553851)那裏。 – shmosel

+0

我想執行這個我自己定義的方法,而不是預定義的方法。 –

+0

@shmosel達恩,我的偷偷摸摸的編輯幾乎不夠鬼鬼祟祟! – Archmage