Jsoup을 사용하여 HTML을 일반 텍스트로 변환할 때 줄 바꿈 유지
HTML 콘텐츠를 일반 텍스트로 변환할 때 가독성을 위해 줄 바꿈을 유지하는 것이 중요합니다. . 기본적으로 Jsoup의 text() 메서드는 줄 바꿈을 제거하여 잠재적으로 출력 형식을 방해합니다. 다행히 getWholeText() 메서드를 활용하여 줄 바꿈을 유지하는 해결 방법이 있습니다.
getWholeText()를 사용하여 줄 바꿈 유지
Jsoup의 getWholeText() 메서드 줄 바꿈을 포함하여 문서의 전체 텍스트 내용을 반환합니다. 이 방법을 활용하려면 다음 단계를 따르세요.
Jsoup을 사용하여 HTML 문자열을 구문 분석합니다.
<code class="java">Document doc = Jsoup.parse(htmlString);</code>
문서 요소를 반복합니다. 텍스트 추출:
<code class="java">for (Element element : doc.getAllElements()) { text += element.getWholeText().trim(); if (element.tagName().equals("br")) { text += "\n"; } }</code>
각
태그 뒤에 줄 바꿈을 추가하면 출력 텍스트에 줄 바꿈이 유지되도록 할 수 있습니다.
고급 솔루션: br2nl() 메서드
위 솔루션은 효과적으로 작동하지만 다음 유틸리티 메서드를 통합하여 개선할 수 있습니다.
<code class="java">public static String br2nl(String html) { if (html == null) { return html; } Document document = Jsoup.parse(html); document.outputSettings(new Document.OutputSettings().prettyPrint(false)); document.select("br").append("\n"); document.select("p").prepend("\n\n"); String s = document.html().replaceAll("\\n", "\n"); return Jsoup.clean(s, "", Whitelist.none(), new Document.OutputSettings().prettyPrint(false)); }</code>
이 방법은 라인을 보존할 뿐만 아니라
및
태그를 추가할 뿐만 아니라 원본 HTML의 줄 바꿈이 유지되도록 보장합니다. HTML 요소에 선택적으로 줄 바꿈을 추가한 다음 정규식 대체를 수행하여 이스케이프된 줄 바꿈을 실제 줄 바꿈으로 대체함으로써 이를 수행합니다.
위 내용은 Jsoup를 사용하여 HTML을 일반 텍스트로 변환할 때 줄바꿈을 유지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!