110 votes

Comment remplacer les caractères spéciaux dans une chaîne de caractères ?

J'ai une chaîne de caractères avec beaucoup de caractères spéciaux. Je veux tous les supprimer, mais garder les caractères alphabétiques.

Comment puis-je faire cela ?

0 votes

2voto

Mike Clark Points 1774
chaîne de sortie = Regex.Replace(Input, @"([ a-zA-Z0-9&, _]|^\s)", "");

Ici, tous les caractères spéciaux sauf l'espace, la virgule et l'esperluette sont remplacés. Vous pouvez également omettre l'espace, la virgule et l'esperluette en utilisant l'expression régulière suivante.

chaîne de sortie = Regex.Replace(Input, @"([ a-zA-Z0-9_]|^\s)", "");

Où Input est la chaîne que nous devons remplacer les caractères.

1voto

Kachailo Dmytro Points 11

Voici une fonction que j'ai utilisée pour supprimer tous les caractères spéciaux possibles de la chaîne

let name = name.replace(/[&\/\\#,+()$~%!.„'":*‚^_¤?<>|@ª{«»§}©®™ ]/g, '').toLowerCase();

0 votes

Pouvez-vous expliquer un peu la regex ?

0 votes

Je recommande que vous ajoutiez des notes dans la section de réponse pour expliquer votre code. Veuillez en savoir plus sur comment rédiger de bonnes réponses.

0 votes

Cela ne répond pas vraiment à la question. Si vous avez une question différente, vous pouvez la poser en cliquant sur Poser une question. Vous pouvez également ajouter une prime pour attirer plus d'attention sur cette question une fois que vous avez suffisamment de réputation. - From Review

0voto

Muhammad Ahsan Points 143

Pour les espaces, utilisez ce motif "[^a-z A-Z 0-9]"

0voto

Madhu Nandan Points 102

Vous pouvez utiliser des expressions régulières de base sur des chaînes de caractères pour trouver tous les caractères spéciaux ou utiliser des classes de modèle et de recherche pour rechercher/modifier/supprimer des chaînes de caractères définies par l'utilisateur. Ce lien contient quelques exemples simples et faciles à comprendre pour les expressions régulières: http://www.vogella.de/articles/JavaRegularExpressions/article.html

0voto

user3629588 Points 1

Vous pouvez obtenir le code Unicode pour ce caractère indésirable à partir de l'outil Character Map sur un PC Windows et ajouter \u par exemple \u00a9 pour le symbole de copyright. Désormais, vous pouvez utiliser cette chaîne avec ce caractère indésirable particulier, ne supprimez aucun caractère indésirable mais remplacez-le par le code Unicode approprié.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X