Sobes.tech
Junior — Middle

Πώς μπορείτε να αποκτήσετε πρόσβαση σε χαρακτήρες ή υποσυμβολοσειρές μέσα σε μια συμβολοσειρά στη γλώσσα Go;

sobes.tech AI

Απάντηση από AI

Στη γλώσσα Go, οι συμβολοσειρές είναι αμετάβλητες ακολουθίες byte. Για πρόσβαση σε χαρακτήρες ή υποσυμβολοσειρές, μπορείτε να χρησιμοποιήσετε φέτες byte ή rune.

  1. Πρόσβαση στα bytes της συμβολοσειράς μέσω δεικτοδότησης:
s := "hello"
byteValue := s[1] // 'e' ως byte
  1. Για εργασία με χαρακτήρες Unicode, είναι καλύτερο να μετατρέψετε τη συμβολοσειρά σε μια φέτα rune:
s := "привет"
runes := []rune(s)
char := runes[1] // δεύτερος χαρακτήρας 'р'
  1. Απόκτηση υποσυμβολοσειράς μέσω φετών:
s := "hello"
substr := s[1:4] // "ell"

Είναι σημαντικό να θυμάστε ότι η δεικτοδότηση με bytes μπορεί να οδηγήσει σε λανθασμένη λειτουργία με πολυ-byte χαρακτήρες Unicode, οπότε σε τέτοιες περιπτώσεις είναι καλύτερο να χρησιμοποιείτε φέτες rune.