2012-04-16 3 views
2

여러 줄의 HTML 태그를 새 줄로 바꿔야합니다. 는 P 태그 당신은 예제 코드에서 보는 바와 같이 :Jsoup : 새 줄 => 새 줄 바꾸기 = 공백으로 시작하는 줄 바꾸기

String html = "<p>Zeile1</p><p>Zeile2</p><p>Zeile3</p><p>Zeile4</p>"; 
Document doc = Jsoup.parse(html); 
doc.select("p").append("\\n"); 
String sanitized = doc.text().replaceAll("\\\\n", System.getProperty("line.separator"); 
System.out.println(sanitized); 

다음은 출력입니다 :

Zeile1 
Zeile2 
Zeile3 
Zeile4 

당신이 볼 수 있듯이 나는 선 2-4에 공백을 얻는다. 그들은 어디에서 왔으며 어떻게 제거 할 수 있습니까? @bdares 제안처럼

+0

공간이 즉시 전화로'p' 요소 사이에 추가되는 '텍스트() '문서에. 이유를 모르겠다. 각 텍스트 요소의 모음을 가져 와서 연결을 설정하여 공간이 없으면 공간을 제거 할 수 있습니다. – bdares

답변

2

, 당신이 요소를 반복 할 수 있습니다

String html = "<p>Zeile1</p><p>Zeile2</p><p>Zeile3</p><p>Zeile4</p>"; 
Document doc = Jsoup.parse(html); 
StringBuilder b = new StringBuilder(); 
for (Element p : doc.select("p")) { 
    b.append(p.text()); 
    b.append(System.getProperty("line.separator")); 
} 
System.out.println(b.toString()); 

출력 :

Zeile1 
Zeile2 
Zeile3 
Zeile4 
+0

답변을 주셔서 감사합니다. 그러나 String.trim() - 메서드를 사용하여 공백을 제거했습니다. 왜냐하면 p 태그를 바꾸지 않고 div, pre, br, h1-h6 ... – Qowaz