스팀 앱 개발기 #134 - 개발 완료: 태그 및 포스트 리스트 화면에서 텍스트의 HTML 태그 제거

개발 완료: 태그 및 포스트 리스트 화면에서 텍스트의 HTML 태그 제거

No. 134
2025. 09. 11 (목) | Written by @dorian-mobileapp

예전부터 눈에 거슬렸던 것은 태그 화면 또는 포스트 리스트 화면에서 포스트 항목의 텍스트에 HTML 태그가 보이는 것이었습니다. 이를 제거하고 순수 텍스트만 보이기를 원했지요. 이번에는 이러한 작업을 진행하였습니다.

스크린샷

수정 후, 포스트 리스트 화면을 확인했습니다. 텍스트에서 HTML 태그가 보였던 이전에 비해 훨씬 보기 좋아졌어요.

IMAGE 2025-09-11 21:42:42.jpg

코드

HTML 포맷의 텍스트로부터 순수 텍스트를 추출하는 String의 확장 함수를 구현했습니다. Jsoup 라이브러리를 활용했습니다.

fun String.extractTextIfThisIsHtml(): String {
    val document = Jsoup.parse(this)
    return document.text()
}

추가로 예전에 구현했던 마크다운 포맷의 텍스트를 HTML 포맷의 텍스트로 변환하는 확장 함수도 보여 드립니다.

fun String.convertMarkdownToHtml(): String {
    val extensions = listOf(TablesExtension.create())
    val parser = Parser.builder().extensions(extensions).build()
    val rootNode: Node = parser.parse(this)
    val renderer = HtmlRenderer.builder().extensions(extensions).build()
    return renderer.render(rootNode)
}

위 두 함수를 호출하여 마크다운 텍스트로부터 순수 텍스트를 추출할 수 있습니다.

val textContent = body?.convertMarkdownToHtml()?.extractTextIfThisIsHtml() ?: "(No text content)"

GitHub Commit

보다 자세한 코드는 아래 commit을 참고하세요.


지난 스팀 앱 개발기


Layout provided by Steemit Enhancer hommage by ayogom

Posted using SteemX

Sort:  

안녕하세요.
SteemitKorea팀에서 제공하는 'steemit-enhancer'를 사용해 주셔서 감사합니다. 개선 사항이 있으면 언제나 저에게 연락을 주시면 되고, 관심이 있으신 분들은 https://cafe.naver.com/steemitkorea/425 에서 받아보실 수 있습니다. 사용시 @응원해 가 포함이 되며, 악용시에는 모든 서비스에서 제외될 수 있음을 알려드립니다.


안녕하세요.
이 글은 SteemitKorea팀(@ayogom)님께서 저자이신 @dorian-mobileapp님을 응원하는 글입니다.
소정의 보팅을 해드렸습니다 ^^ 항상 좋은글 부탁드립니다
SteemitKorea팀에서는 보다 즐거운 steemit 생활을 위해 노력하고 있습니다.
이 글은 다음날 다시 한번 포스팅을 통해 소개 될 예정입니다. 감사합니다!

Upvoted! Thank you for supporting witness @jswit.

🎉 Congratulations!

Your post has been upvoted by the SteemX Team! 🚀

SteemX is a modern, user-friendly and powerful platform built for the Steem community.

🔗 Visit us: www.steemx.org

✅ Support our work — Vote for our witness: bountyking5

banner.jpg