Encontrando o comprimento de uma string

Dart:
Encontrando o comprimento de uma string

Como fazer:

Dart torna simples obter o comprimento de uma string usando a propriedade length. Aqui está um exemplo básico:

void main() {
  String myString = "Olá, Dart!";
  print("O comprimento de '\(myString)' é: \(myString.length)");
  // Saída: O comprimento de 'Olá, Dart!' é: 10
}

Esta propriedade conta o número de unidades de código UTF-16 na string, o que corresponde ao comprimento da string para a maioria dos casos de uso comuns.

Para um processamento de texto mais matizado, especialmente envolvendo caracteres Unicode fora do Plano Multilíngue Básico (BMP), considere usar o pacote characters para contar aglomerados de grafemas, que representa mais precisamente os caracteres percebidos pelo usuário.

Primeiro, adicione characters ao seu pubspec.yaml:

dependencies:
  characters: ^1.2.0

Depois, use-o assim:

import 'package:characters/characters.dart';

void main() {
  String myEmojiString = "👨‍👩‍👧‍👦 família";
  print("O comprimento de '\(myEmojiString)' é: \(myEmojiString.characters.length)");
  // Saída: O comprimento de '👨‍👩‍👧‍👦 família' é: 8
}

Nesse exemplo, myEmojiString.characters.length nos dá o comprimento em termos de aglomerados de grafemas Unicode, o que é uma representação mais precisa para strings contendo caracteres complexos, como emojis ou marcas de caracteres combinados.