Skip to content

unicode

Go 언어 개발에서 문자열 자르기는 빈번하게 수행되는 작업이며, 특히 중국어와 영어가 혼합된 처리를 다룰 때는 인코딩 문제에 특히 주의해야 합니다. 본 문서에서는 Go 언어에서 주로 사용되는 4 가지 문자열 자르기 방법을 체계적으로 정리하고, 코드 예시와 함께 기술적 포인트를 설명합니다.

Unicode 안전 처리 방법

[]rune 변환을 통해 문자 수준의 안전 절단을 구현합니다.

go
func main() {
    str := "Hello, 世界!"
    runes := []rune(str)
    
    // 문자 수준 안전 절단
    sub3 := string(runes[7:9])
    fmt.Println("안전 절단 중국어:", sub3) // 출력:世界
}

기술 비교

방법시간 복잡도메모리 오버헤드적용 시나리오
바이트 슬라이스O(1)낮음순수 ASCII 문자열
[]rune 변환O(n)높음멀티바이트 문자 포함 문자열

Golang by www.golangdev.cn edit