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 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 룬과 바이트
- strings 패키지 함수
- strings.Builder
- 유니코드와 utf8