special_characters_handler 1.0.1 special_characters_handler: ^1.0.1 copied to clipboard
A powerful framework for handling special characters, emojis, and HTML entities in strings
Special Characters Handler #
Un framework Dart puissant et flexible pour gérer les caractères spéciaux, les emojis, et les entités HTML dans vos chaînes de caractères.
Caractéristiques #
- 🧹 Nettoyage intelligent des caractères spéciaux
- 🔄 Conversion des entités HTML
- 😊 Gestion des emojis
- 🔠 Normalisation Unicode
- ⚡ Performance optimisée avec cache
- 🎯 API simple et intuitive
- 🔧 Hautement configurable
Installation #
dependencies:
special_characters_handler: ^1.0.0
Utilisation rapide #
import 'package:special_characters_handler/special_characters_handler.dart';
void main() {
// Utilisation simple avec l'extension String
String text = "Héllô "world" 😊";
String cleaned = text.cleanSpecialCharacters();
print(cleaned); // Output: Hello "world"
// Utilisation avec options personnalisées
final options = CleaningOptions(
removeHtmlEntities: true,
removeEmojis: true,
normalizeUnicode: true,
convertAccents: true,
);
String customCleaned = text.cleanSpecialCharacters(options: options);
}
Fonctionnalités détaillées #
1. Configuration personnalisée #
#dart final handler = SpecialCharactersHandler();
// Ajout de règles personnalisées handler.addReplacementRule(ReplacementRule( pattern: r'[0-9]+', replacement: '#', isRegex: true, ));
// Utilisation avec options spécifiques final options = CleaningOptions( removeHtmlEntities: true, removeEmojis: false, normalizeUnicode: true, convertAccents: true, removeSpecialChars: true, preserveNewlines: true, );
### 2. Gestion des emojis
```dart
String text = "Hello 😊 World 🌍";
// Extraction des emojis
List<String> emojis = text.extractEmojis();
// Suppression des emojis
String noEmojis = text.cleanSpecialCharacters(
options: CleaningOptions(removeEmojis: true)
);
3. Entités HTML #
String html = ""Hello" & 'World'";
String cleaned = html.cleanSpecialCharacters();
print(cleaned); // "Hello" & 'World'
4. Performance #
Le framework utilise un système de cache intelligent pour optimiser les performances :
final handler = SpecialCharactersHandler();
// Les appels répétés sont mis en cache String result1 = handler.clean(longText); String result2 = handler.clean(longText); // Utilise le cache
// Statistiques de performance Map<String, dynamic> stats = handler.getStats(); print(stats['cacheSize']);
Documentation API complète #
Pour une documentation détaillée de l'API, visitez la documentation en ligne.
Configuration avancée #
Configuration globale #
// Dans votre fichier de configuration
const config = SpecialCharactersConfig(
maxInputLength: 1000000,
enableLogging: true,
cacheSize: 1000,
);
Règles personnalisées #
dart final handler = SpecialCharactersHandler();
// Ajout d'une règle simple handler.addReplacementRule(ReplacementRule( pattern: '@', replacement: 'at', ));
// Ajout d'une règle avec expression régulière handler.addReplacementRule(ReplacementRule( pattern: r'\b\d+\b', replacement: '#', isRegex: true, ));
Contribution #
Les contributions sont les bienvenues ! Voici comment vous pouvez contribuer :
- Fork le projet
- Créez votre branche de fonctionnalité (
git checkout -b feature/AmazingFeature
) - Committez vos changements (
git commit -m 'Add some AmazingFeature'
) - Push vers la branche (
git push origin feature/AmazingFeature
) - Ouvrez une Pull Request
Tests #
dart test
Licence #
Distribué sous la licence MIT. Voir LICENSE
pour plus d'informations.
Auteur #
Votre nom - @votretwitter
Remerciements #
- Aux contributeurs du projet
- À la communauté Dart/Flutter