Recherche et remplacement de texte

Dart:
Recherche et remplacement de texte

Comment faire :

Dart fournit des méthodes robustes pour chercher et remplacer du texte directement à travers sa classe String, sans nécessiter de bibliothèques externes. Voici comment vous pouvez le faire :

Recherche et remplacement basiques

Pour rechercher une sous-chaîne et la remplacer par une autre chaîne, vous pouvez utiliser replaceAll :

String sampleText = "Hello, Dart! Dart is great.";
String modifiedText = sampleText.replaceAll("Dart", "Flutter");
print(modifiedText); // Sortie : Hello, Flutter! Flutter is great.

Utilisation des expressions régulières

Pour des besoins de recherche et de remplacement plus complexes, Dart utilise des expressions régulières via la classe RegExp. Cela permet de faire correspondre des motifs et de remplacer des chaînes :

String sampleText = "Dart 2023, Flutter 2023";
String modifiedText = sampleText.replaceAll(RegExp(r'\d+'), "2024");
print(modifiedText); // Sortie : Dart 2024, Flutter 2024

Cet exemple trouve toutes les instances d’un ou plusieurs chiffres (\d+) dans la chaîne et les remplace par “2024”.

Recherche insensible à la casse

Pour effectuer une recherche insensible à la casse, vous pouvez modifier le constructeur RegExp pour ignorer la casse :

String sampleText = "Welcome to Dart, the programming language.";
String modifiedText = sampleText.replaceAll(RegExp(r'dart', caseSensitive: false), "Flutter");
print(modifiedText); // Sortie : Welcome to Flutter, the programming language.

Remplacement avec une fonction

Pour des remplacements dynamiques basés sur la correspondance elle-même, Dart permet de passer une fonction à replaceAllMapped. Cette fonction peut effectuer des opérations ou des calculs sur les séquences correspondantes :

String sampleText = "Increment 5 by 1 to get 6.";
String incrementedText = sampleText.replaceAllMapped(RegExp(r'\d+'), (Match m) => (int.parse(m[0]!) + 1).toString());
print(incrementedText); // Sortie : Increment 6 by 1 to get 7.

Ceci remplace chaque séquence de chiffres par sa valeur incrémentée. Chaque correspondance est analysée en un entier, incrémentée, puis convertie à nouveau en une chaîne de caractères pour le remplacement.

Les capacités de manipulation de chaînes de caractères de Dart, en particulier pour la recherche et le remplacement de texte, en font un outil puissant pour traiter et préparer les données au sein de vos applications. Que vous utilisiez des remplacements de chaînes simples ou que vous exploitiez la puissance des expressions régulières, Dart offre la flexibilité et la performance nécessaires pour une manipulation efficace du texte.