2014-03-31 64 views
0

我需要取消註釋樣式元素中的CSS代碼(並且我需要在Java中執行此操作)。 考慮下面的html代碼:取消註釋Java代碼中的HTML代碼

<html> 
<head> 
<style type="text/css"> 
<!-- 
    .big { 
     font-size: 30px; 
    } 
--> 
</style> 
</head> 
<body></body> 
</html> 

這裏是理想的結果:

<html> 
<head> 
<style type="text/css"> 
    .big { 
     font-size: 30px; 
    } 
</style> 
</head> 
<body></body> 
</html> 

我通常使用傑里科做HTML解析。

UPDATE。解決:

String newHtmlString = htmlString.replaceAll("<style><!--", "<style>").replaceAll("--></style>", "</style>"); 
+0

我假設你的意思的JavaScript。你不能刪除評論,但你可以改變元素的類,或者添加css規則到元素 - 無論如何這些元素都是更清晰的選項。 –

+0

我沒有使用過Jericho,但是我覺得解析器不能幫你解決這個問題。因爲一旦解析完成,已註釋的代碼已被忽略。在通過Jericho傳遞內容之前,您可能需要進行一些字符串操作 – Hirak

回答

3

如果你的文件的唯一評論是CSS評論,你可能會考慮這樣的:

String html = ...; //HTML in String 
    html.replaceAll("<!--", ""); 
    html.replaceAll("-->", "");