본문 바로가기

kotlin

[Kotlin] 문자열 공백 제거 방법 (trim, trimIndent, trimMargin)

trimIndent

  • 모든 입력 라인의 공통 최소 들여쓰기를 감지하고 모든 라인에서 그만큼 제거한다.
  • 비어있는 첫번째와 마지막 라인 제거

코틀린에서 문자열 다룰 때 내가 가장 많이 사용하는 방법이다. 모든 입력 라인의 공통 최소 들여쓰기를 알아서 감지하고 제거하기 때문에, """로 감싼 문자열을 처리할 때 편하다. 

val str1 = 
"""
    AND os_type
    AND channel
    AND LOWER(name)
    AND age
""".trimIndent()

println(str1)

출력 내용

AND os_type
AND channel
AND LOWER(name)
AND age

trim

  • 문자열 양 끝 공백을 제거한다
val str2 = 
"""         AND os_type
            AND channel
            AND LOWER(name)
            AND age
        """.trim()
        
println(str2)

출력 내용 

AND os_type
            AND channel
            AND LOWER(name)
            AND age

trimMargin

  • 여백이 기준이 되는 문자열을 지정할 수 있다
  • default는 | 이고, 괄호 안에 값을 넣어주면 그걸로도 사용할 수 있다
  • 지정한 문자까지 여백으로 두고 거기까지 지운다
val str3 = 
"""
        |   XYZ
        foo
        bar
    """.trimMargin()
    
println(str3)
   XYZ
        foo
        bar

| 이후의 공백만큼은 남은채로 출력된다. 

반응형