Remplacer caractères accentuées dans une chaine

Soyez le premier à donner votre avis sur cette source.

Snippet vu 2 708 fois - Téléchargée 10 fois


Contenu du snippet

En VB Net voici comment remplacer dans une chaine de caractères les caractères accentués par leurs équivalents non accentués .

Imports System.Text
Imports System.Globalization

'Fonction qui remplace les caractères accentués par le caractere equivalent non accentué
Public Function ReplaceChars(ByVal source As String) As String
    
    Dim sourceInFormD As String = source.Normalize(NormalizationForm.FormD)
    Dim output As New StringBuilder
    For Each c As Char In sourceInFormD
        Dim uc As UnicodeCategory = CharUnicodeInfo.GetUnicodeCategory(c)
        If uc <> UnicodeCategory.NonSpacingMark Then
            output.Append(c)
        End If
    Next
    Return output.ToString.Normalize(NormalizationForm.FormC)
    
End Function

A voir également

Ajouter un commentaire

Commentaires

Whismeril
Messages postés
13484
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 juillet 2019
282 -
Bonsoir VB,
ça supprime tous les signes diacritiques:
  • accents,
  • cédilles
  • tilde
  • etc...


Je l'avais mise dans ma version du Boggle
vb95
Messages postés
1898
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
5 juillet 2019
60 > Whismeril
Messages postés
13484
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 juillet 2019
-
Salut Whismeril
Ce n'est pas dans ta version du Boogle que je l'ai vue cette fonction ( je ne sais plus où d'ailleurs)
Je m'en sers dans ma version du "Dictionnaire en format DAWG" pour la vérification d'un mot que l'on tape dans une Textbox : ainsi on ne récupère que des mots avec les lettres de A jusqu'à Z même en tapant les mots avec les accents et autres signes diacritiques . .
Comme c'était la première fois que je voyais cette fonction et que je la trouvais concise et intéressante j'ai voulu en faire profiter la communauté Codes-Sources
Whismeril
Messages postés
13484
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 juillet 2019
282 > vb95
Messages postés
1898
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
5 juillet 2019
-
Salut, je ne sais plus non plus ou je l'avais trouvée et en faire profiter tout le monde est une très bonne idée.
Je voulais juste préciser que ça supprime toute modification à une lettre et pas seulement les accents.
Bonnne journée
Commenter la réponse de vb95

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.