Golang 문자열의 문자 액세스
Go에서 문자열의 문자에 액세스하는 것은 ASCII와 다르며, 대신 기본 바이트 값을 반환합니다. 캐릭터. 문자열은 바이트 배열을 나타내므로 첫 번째 문자를 검색하면 숫자 ASCII 표현이 생성됩니다. 예를 들어, "HELLO"[1]는 의도된 'E' 대신 69를 반환합니다.
해결책: ASCII 또는 유니코드 코드 포인트로 변환
실제 값을 얻으려면 캐릭터라면 다음 기술을 사용해 보세요.
1. ASCII(단일 바이트 문자):
바이트 값을 문자열로 변환하여 효과적으로 ASCII 문자를 반환합니다.
fmt.Println(string("Hello"[1])) // Prints "e"
2. 유니코드(다중 바이트 문자):
문자열을 룬 조각(유니코드 코드 포인트)으로 변환하고 원하는 위치에 액세스합니다.
fmt.Println(string([]rune("Hello, 世界")[1])) // Prints "e" (ASCII) fmt.Println(string([]rune("Hello, 世界")[8])) // Prints "界" (UTF-8)
추가 참고 사항 :
위 내용은 Go 문자열의 문자에 어떻게 올바르게 액세스합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!