Golang: How To Convert String To Rune in Go Example

In Golang, we often use strings to store character data. But rune slices have many advantages: they treat characters more consistently. For Unicode characters, a rune slice can be used to append and modify characters with no errors. If we act on a string directly, we can cause problems here.

To convert a string to a rune in Golang, you can use the “[]rune()”. A rune is a single Unicode code point. A string is a sequence of runes.

Syntax

[]rune(s)

Example

package main

import (
  "fmt"
)

func main() {
  // Define a string
  s := "Hi, Golang!"

  // Convert the string to a slice of runes
  runeSlice := []rune(s)

  // Iterate through the slice of runes and print each rune
  // And its Unicode code point
  for i, r := range runeSlice {
    fmt.Printf("runeSlice[%d] = %c (U+%04X)\n", i, r, r)
  }
}

Output

runeSlice[0] = H (U+0048)
runeSlice[1] = i (U+0069)
runeSlice[2] = , (U+002C)
runeSlice[3] = (U+0020)
runeSlice[4] = G (U+0047)
runeSlice[5] = o (U+006F)
runeSlice[6] = l (U+006C)
runeSlice[7] = a (U+0061)
runeSlice[8] = n (U+006E)
runeSlice[9] = g (U+0067)
runeSlice[10] = ! (U+0021)

In this example, we defined a string s, then converted it to a slice of runes using a type conversion []rune(s).

The result is stored in the runeSlice variable. We then iterate through the runeSlice and print each rune and its corresponding Unicode code point.

#go #golang

Golang: How To Convert String To Rune in Go Example
43.90 GEEK