Sobes.tech
Junior

Lze změnit určitý znak v řetězci?

sobes.tech AI

Odpověď od AI

Řetězce v Go jsou neměnné. Nelze přímo změnit jednotlivý znak v existujícím řetězci.

Chcete-li získat upravený řetězec, musíte vytvořit nový:

  1. Převést řetězec na pole rune ([]rune).
  2. Změnit prvek v poli.
  3. Převést pole rune zpět na řetězec.
// s - původní řetězec
s := "hello"

// Převod řetězce na []rune
r := []rune(s)

// Změna runy na indexu
r[0] = 'ц' // Nahrazení 'h' znakem 'ц'

// Převod zpět na řetězec
newString := string(r)

// newString bude "цеllo"

Alternativní, méně flexibilní, ale v jednoduchých případech použitelná metoda je spojování řetězců.

// s - původní řetězec
s := "hello"

// Vytvoření nového řetězce spojením podřetězců a požadovaného znaku
newString := string(s[0]) + "ц" + s[2:] // Příklad: změna druhého znaku

// newString bude "hцllo"