Go 언어에서 문자열 길이를 찾는 방법: 1. "len()" 함수를 사용하여 ASCII 문자열 길이를 계산합니다. 2. "utf8.RuneCountInString()" 함수를 사용하여 유니코드 문자열 길이를 계산합니다.
이 문서의 운영 환경: Windows 7 시스템, Go 버전 1.11.2, Dell G3 컴퓨터.
추천 튜토리얼: "go 언어"
Go 언어는 문자열 길이를 계산합니다 - len() 및 RuneCountInString()
Go 언어의 내장 함수 len()을 사용하여 슬라이스를 얻을 수 있습니다 , 문자열, 채널 등의 길이 다음 코드에서는 len()을 사용하여 문자열 길이를 가져올 수 있습니다.
tip1 := "genji is a ninja" fmt.Println(len(tip1)) tip2 := "忍者" fmt.Println(len(tip2))
프로그램 출력은 다음과 같습니다.
16 6
len() 함수의 반환 값은 ASCII 문자 수 또는 문자열의 바이트 길이를 나타내는 int 유형입니다.
출력 첫 번째 줄의 16은 Tip1의 문자 수가 16임을 나타냅니다.
출력 두 번째 줄의 6은 Tip2의 문자 형식을 나타냅니다. 즉, "ninja"의 문자 수는 6입니다. 그러나 관례에 따라 "ninja"의 문자 수는 2가 되어야 합니다.
여기서 차이점은 Go 언어 문자열은 모두 UTF-8 형식으로 저장되고 각 한자가 3바이트를 차지하므로 len()을 사용하여 두 한자에 해당하는 6바이트를 얻습니다.
관례적인 문자 수를 기준으로 계산하려면 Go 언어의 UTF-8 패키지에서 제공하는 RuneCountInString() 함수를 사용하여 Uncode 문자 수를 계산해야 합니다.
다음 코드는 UTF-8에서 문자 수를 계산하는 방법을 보여줍니다.
fmt.Println(utf8.RuneCountInString("忍者")) fmt.Println(utf8.RuneCountInString("龙忍出鞘,fight!"))
프로그램 출력은 다음과 같습니다.
2 11
일반 게임에서는 로그인 시 이름을 입력해야 하며 일반적으로 이름에는 길이 제한이 있습니다. 중국인들이 중국어를 이름으로 사용하는 데 익숙하다는 점을 고려하면 UTF-8 형식의 문자열 길이를 감지하는 것이 필요합니다.
요약
ASCII 문자열 길이는 len() 함수를 사용합니다.
유니코드 문자열 길이는 utf8.RuneCountInString() 함수를 사용합니다.
위 내용은 Go 언어에서 문자열의 길이를 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!