Dart:
Визначення довжини рядка
Як це зробити:
Dart робить отримання довжини рядка простим за допомогою властивості length
. Ось базовий приклад:
void main() {
String myString = "Hello, Dart!";
print("Довжина '\(myString)' становить: \(myString.length)");
// Вивід: Довжина 'Hello, Dart!' становить: 12
}
Ця властивість рахує кількість кодових одиниць UTF-16 у рядку, що відповідає довжині рядка для більшості звичайних випадків використання.
Для більш нюансованої обробки тексту, особливо з участю символів Unicode поза Основною багатомовною площиною (BMP), варто використовувати пакет characters
для підрахунку кластерів графем, які точніше представляють символи, сприйняті користувачем.
Спочатку додайте characters
до вашого pubspec.yaml
:
dependencies:
characters: ^1.2.0
Потім використовуйте його так:
import 'package:characters/characters.dart';
void main() {
String myEmojiString = "👨👩👧👦 родина";
print("Довжина '\(myEmojiString)' становить: \(myEmojiString.characters.length)");
// Вивід: Довжина '👨👩👧👦 родина' становить: 8
}
У цьому прикладі myEmojiString.characters.length
дає нам довжину у термінах кластерів Unicode графем, що є більш точним представленням для рядків, які містять складні символи, такі як емодзі або комбіновані знаки символів.