Avatar ·

Wie erhalte ich die Länge eines Strings in Swift? (count funktioniert nicht wie in anderen Sprachen)

Hallo zusammen! Ich habe gerade angefangen, Swift nach Python zu lernen, und bin auf eine seltsame Situation gestoßen. In Python bin ich es gewohnt, `len("hello")` zu schreiben und 5 zu erhalten. In Swift habe ich Folgendes versucht: ```swift let text = "Привет, мир!" print(text.length) ``` Aber Xcode gab einen Fehler aus: "Value of type 'String' has no member 'length'". Dann erinnerte ich mich, dass einige Sprachen die Eigenschaft `length` verwenden, aber in Swift funktioniert das nicht. Danach habe ich gegoogelt, dass ich die Eigenschaft `count` verwenden muss: ```swift print(text.count) ``` Aber hier bemerkte ich ein seltsames Verhalten. Wenn der String Emojis oder Zeichen mit Akzenten enthält (z.B. "café" oder "😊"), zeigt `count` nicht das, was ich erwarte. Zum Beispiel: ```swift let emoji = "👨‍👩‍👧‍👦" print(emoji.count) // Gibt 1 aus ``` Aber ich hätte 4 erwartet (Vater, Mutter, Mädchen, Junge). Oder mit einer Flagge: ```swift let flag = "🇷🇺" print(flag.count) // Auch 1 ``` Warum passiert das? Wie bekomme ich die korrekte Anzahl von Zeichen in einem String, die alle berücksichtigt?