Sobes.tech
Junior

Je možné zmeniť určitý znak v reťazci?

sobes.tech AI

Odpoveď od AI

Reťazce v Go sú nemenné. Nie je možné priamo zmeniť jednotlivý znak v existujúcom reťazci.

Ak chcete získať upravený reťazec, musíte vytvoriť nový:

  1. Preveďte reťazec na pole rune ([]rune).
  2. Zmeňte prvok v poli.
  3. Preveďte pole rune späť na reťazec.
// s - pôvodný reťazec
s := "hello"

// Prevod reťazca na []rune
r := []rune(s)

// Zmena runy na indexe
r[0] = 'ц' // Nahradenie 'h' znakom 'ц'

// Prevod späť na reťazec
newString := string(r)

// newString bude "цеllo"

Alternatívne, menej flexibilná, ale v jednoduchých prípadoch možná metóda je spojovanie reťazcov.

// s - pôvodný reťazec
s := "hello"

// Vytvorenie nového reťazca spojením podreťazcov a požadovaného znaku
newString := string(s[0]) + "ц" + s[2:] // Príklad: zmena druhého znaku

// newString bude "hцllo"