>백엔드 개발 >Golang >Go에서 룬을 문자열로 변환하는 방법은 무엇입니까?

Go에서 룬을 문자열로 변환하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-19 21:42:02729검색

How to Convert a Rune to a String in Go?

Golang에서 룬을 문자열로 변환

룬을 문자열로 변환하려면 strconv.QuoteRune() 함수를 사용할 수 있습니다. 그러나 코드에서는 룬을 읽기 위해 scanner.Scan()을 사용하고 있는데 이는 잘못된 것입니다.

scanner.Scan() 함수는 토큰 또는 Scanner.Mode에 의해 제어되는 특수 토큰의 룬을 읽습니다. 비트마스크. 룬 자체를 반환하지 않고 text/scanner 패키지의 특수 상수를 반환합니다.

단일 룬을 읽으려면 대신 Scanner.Next()를 사용하세요. 수정된 코드는 다음과 같습니다.

package main

import (
    "fmt"
    "strconv"
    "strings"
    "text/scanner"
)

func main() {
    var b scanner.Scanner
    const a = `a`
    b.Init(strings.NewReader(a))
    c := b.Next()
    fmt.Println(strconv.QuoteRune(c))
}

출력:

'a'

또는 유형 변환을 사용하여 룬을 문자열로 직접 변환할 수 있습니다. int32:

r := rune('a')
fmt.Println(string(r))

출력:

a

더 많은 편의를 위해 for ... 범위 구성을 사용하여 문자열의 룬을 반복할 수 있습니다.

for _, r := range "abc" {
    fmt.Println(string(r))
}

출력:

a
b
c

다음을 사용하여 문자열을 룬 조각으로 변환할 수도 있습니다. []rune():

runes := []rune("abc")
fmt.Println(runes) // Output: [97 98 99]

마지막으로 utf8.DecodeRuneInString()을 사용하여 문자열에서 룬을 추출할 수 있습니다.

위 내용은 Go에서 룬을 문자열로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.