Maison >développement back-end >C++ >Comment puis-je supprimer les caractères non-ASCII des chaînes en C# ?

Comment puis-je supprimer les caractères non-ASCII des chaînes en C# ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-19 13:11:11233parcourir

How Can I Remove Non-ASCII Characters from Strings in C#?

Suppression efficace des caractères non-ASCII dans les chaînes C#

La gestion des chaînes contenant des caractères non-ASCII nécessite souvent de les supprimer pour des raisons de compatibilité ou de traitement des données. Cet article présente une solution C# concise utilisant des expressions régulières.

La solution : tirer parti de Regex.Replace()

La méthode Regex.Replace() fournit un moyen efficace d'éliminer les caractères non-ASCII :

<code class="language-csharp">string s = "søme string";
s = Regex.Replace(s, @"[^\u0000-\u007F]+", string.Empty);</code>

Explication détaillée

  • Regex.Replace() prend un modèle d'expression régulière et une chaîne de remplacement.
  • Le modèle @"[^u0000-u007F] " cible toute séquence de caractères en dehors de la plage ASCII (u0000-u007F).
  • string.Empty remplace les caractères correspondants par rien, les supprimant ainsi.
  • Le ^ (caret) annule la plage de caractères, garantissant que seuls les caractères non-ASCII correspondent.
  • u####-u#### désigne une plage de caractères Unicode. Ici, il spécifie les caractères Unicode 0 à 127 (le jeu ASCII).

Comprendre l'approche

Comme l'a noté Gordon Tucker, cette expression régulière correspond efficacement à tous les caractères pas dans la plage ASCII spécifiée. Cette approche directe est précise et évite toute complexité inutile.

Conclusion

Cette Regex.Replace() méthode fournit un moyen propre et efficace de supprimer les caractères non-ASCII de vos chaînes C#, garantissant ainsi l'intégrité des données et la compatibilité entre différents systèmes.

---
  1. u0000-u007F

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn