0Pricing
Go Academy · 강의

strings 패키지 함수

분할, 결합 및 공백 제거하기

strings 패키지 함수은(는) CoddyKit의 무료 Go Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Go Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Go Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

strings 패키지

표준 라이브러리의 strings 패키지는 텍스트 검색, 분할, 결합, 공백 제거, 대소문자 변경에 사용할 수 있는 도우미를 제공합니다.

import "strings"로 가져오십시오.

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ToUpper("hello"))
}

Contains와 HasPrefix

반복문을 직접 작성하지 않고 부분 문자열을 확인할 수 있습니다:

  • strings.Contains(s, sub)는 sub가 포함되어 있는지 알려줍니다.
  • strings.HasPrefix와 strings.HasSuffix는 시작과 끝을 확인합니다.
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "golang"
    fmt.Println(strings.Contains(s, "lan"))
    fmt.Println(strings.HasPrefix(s, "go"))
}

위치 찾기

strings.Index(s, sub)는 처음 일치하는 항목의 바이트 인덱스를 반환하며, 찾지 못하면 -1을 반환합니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Index("chocolate", "col"))
    fmt.Println(strings.Index("chocolate", "xyz"))
}

문자열 분할하기

strings.Split(s, sep)는 구분 기호를 사용해 문자열을 슬라이스로 나눕니다.

CSV 형식의 데이터를 구문 분석할 때 특히 적합합니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    parts := strings.Split("a,b,c", ",")
    fmt.Println(parts)
    fmt.Println(len(parts))
}

공백으로 분할하기

strings.Fields(s)는 연속된 공백을 기준으로 나누고 빈 부분은 제거합니다. 단어 수를 셀 때 적합합니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    words := strings.Fields("  the   quick brown  fox ")
    fmt.Println(words)
    fmt.Println(len(words))
}

슬라이스 결합하기

strings.Join(slice, sep)은 Split의 반대 작업입니다. 구분 기호를 사용해 슬라이스 요소를 하나로 이어 붙입니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    parts := []string{"2026", "05", "30"}
    fmt.Println(strings.Join(parts, "-"))
}

공백 제거하기

strings.TrimSpace(s)는 앞뒤 공백을 제거하므로 사용자 입력을 정리할 때 유용합니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.TrimSpace("   hi there   ") + "!")
}

특정 문자 제거하기

strings.Trim(s, cutset)은 지정한 문자 중 하나에 해당하는 문자를 양쪽 끝에서 제거합니다. TrimPrefix와 TrimSuffix는 정확히 일치하는 문자열을 제거합니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Trim("***name***", "*"))
    fmt.Println(strings.TrimSuffix("file.txt", ".txt"))
}

텍스트 바꾸기

strings.ReplaceAll(s, old, new)은 모든 일치 항목을 바꿉니다. 처음 n개 일치 항목으로 제한하려면 strings.Replace(s, old, new, n)을 사용하십시오.

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ReplaceAll("a-b-c", "-", "+"))
    fmt.Println(strings.Replace("a-b-c", "-", "+", 1))
}

반복하고 세기

유용한 도우미가 두 가지 더 있습니다:

  • strings.Repeat(s, n)은 반복되는 문자열을 만듭니다.
  • strings.Count(s, sub)은 겹치지 않는 일치 항목의 수를 셉니다.
package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Repeat("ab", 3))
    fmt.Println(strings.Count("banana", "a"))
}

함수 조합하기

이 도우미들은 서로 잘 조합됩니다. 여기서는 지저분한 문자열에서 공백을 제거하고, 분할한 뒤, 다시 결합하여 깔끔한 쉼표 목록으로 만듭니다.

package main

import (
    "fmt"
    "strings"
)

func main() {
    raw := "  go  rust  zig  "
    words := strings.Fields(raw)
    fmt.Println(strings.Join(words, ", "))
}

빠른 확인

슬라이스를 하나의 문자열로 결합하는 함수를 고르십시오.

복습: strings 함수

이제 텍스트를 다룰 수 있는 도구 모음을 갖추었습니다:

  • 검색: Contains, Index, HasPrefix.
  • 나누기: Split, Fields.
  • 결합: Join, Repeat.
  • 정리: TrimSpace, Trim, ReplaceAll.
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "  Hello, Go World  "
    fmt.Println(strings.ToLower(strings.TrimSpace(s)))
}

자주 묻는 질문

“strings 패키지 함수” 강의는 무료인가요?

네 — “strings 패키지 함수” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Go Academy 강의 전체를 잠금 해제할 수 있습니다. Go Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“strings 패키지 함수”에서 뭘 배우나요?

분할, 결합 및 공백 제거하기 브라우저에서 직접 실행하는 실습 코드로 Go Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Go Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Go Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“strings 패키지 함수” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Go Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Go Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 룬과 바이트
  2. strings 패키지 함수
  3. strings.Builder
  4. 유니코드와 utf8
← Go Academy(으)로 돌아가기