Conversion entité html >> caractère accentué

Contenu du snippet

Cette petite fonction permet de convertir les entités html en
caractère accentué normal. En ASP la fonction qui fait le contraire est
Server.HtmlEncode("ma chaine de caractère").

Source / Exemple :


Option Explicit
'--------------

Private mvaraccents(192 To 255) As String

Public Function HtmlToAccent(ByVal sText As String) As String
    Dim sChar() As String, i As Integer, _
    sResult As String, j As Integer, sTmp As String
    
    ' ----
    For i = 1 To Len(sText)
       ReDim Preserve sChar(i)
       sChar(i) = Mid(sText, i, 1)
       ' ----
       If sChar(i) = "&" Then
           ' ----
           For j = 192 To 255
               sTmp = Mid(sText, i, InStr(i, sText, ";") - i + 1)
               If sTmp = mvaraccents(j) Then
                   i = i + Len(sTmp) - 1
                   sResult = sResult & Chr(j)
                   Exit For
               End If
           Next
           ' ----
       Else
           sResult = sResult & sChar(i)
       End If
       ' ----
    Next
    
    ' ----
    HtmlToAccent = sResult
     
End Function

Private Sub Form_Load()
    pTableau
    MsgBox HtmlToAccent("un éléphant sur un hêtre")
End Sub

Private Sub pTableau()
    'Assignation des caractères accentués
    'à leur entité Html.
    '------------------------------------
    mvaraccents(192) = "À"   'À
    mvaraccents(193) = "Á"   'Á
    mvaraccents(194) = "Â"    'Â
    mvaraccents(195) = "Ã"   'Ã
    mvaraccents(196) = "Ä"     'Ä
    mvaraccents(197) = "Å"    'Å
    mvaraccents(198) = "&Aelig;"    'Æ
    mvaraccents(199) = "Ç"   'Ç
    mvaraccents(200) = "È"   'È
    mvaraccents(201) = "É"   'É
    mvaraccents(202) = "Ê"    'Ê
    mvaraccents(203) = "Ë"     'Ë
    mvaraccents(204) = "Ì"   'Ì
    mvaraccents(205) = "Í"   'Í
    mvaraccents(206) = "Î"    'Î
    mvaraccents(207) = "Ï"     'Ï
    mvaraccents(208) = "Ð"      'Ð
    mvaraccents(209) = "Ñ"   'Ñ
    mvaraccents(210) = "Ò"   'Ò
    mvaraccents(211) = "Ó"   'Ó
    mvaraccents(212) = "Ô"    'Ô
    mvaraccents(213) = "Õ"   'Õ
    mvaraccents(214) = "Ö"     'Ö
    mvaraccents(215) = "×"    '×
    mvaraccents(216) = "Ø"   'Ø
    mvaraccents(217) = "Ù"   'Ù
    mvaraccents(218) = "Ú"   'Ú
    mvaraccents(219) = "Û"    'Û
    mvaraccents(220) = "Ü"     'Ü
    mvaraccents(221) = "Ý"   'Ý
    mvaraccents(222) = "Þ"    'Þ
    mvaraccents(223) = "ß"    'ß
    ' ----'
    mvaraccents(224) = "à"   'à
    mvaraccents(225) = "á"   'á
    mvaraccents(226) = "â"    'â
    mvaraccents(227) = "ã"   'ã
    mvaraccents(228) = "ä"     'ä
    mvaraccents(229) = "å"    'å
    mvaraccents(230) = "æ"    'æ
    mvaraccents(231) = "ç"   'ç
    mvaraccents(232) = "è"   'è
    mvaraccents(233) = "é"   'é
    mvaraccents(234) = "ê"    'ê
    mvaraccents(235) = "ë"     'ë
    mvaraccents(236) = "ì"   'ì
    mvaraccents(237) = "í"   'í
    mvaraccents(238) = "î"    'î
    mvaraccents(239) = "ï"     'ï
    mvaraccents(240) = "ð"      'ð
    mvaraccents(241) = "ñ"   'ñ
    mvaraccents(242) = "ò"   'ò
    mvaraccents(243) = "ó"   'ó
    mvaraccents(244) = "ô"    'ô
    mvaraccents(245) = "õ"   'õ
    mvaraccents(246) = "ö"     'ö
    mvaraccents(247) = "÷"   '÷
    mvaraccents(248) = "ø"   'ø
    mvaraccents(249) = "ù"   'ù
    mvaraccents(250) = "ú"   'ú
    mvaraccents(251) = "û"    'û
    mvaraccents(252) = "ü"     'ü
    mvaraccents(253) = "ý"   'ý
    mvaraccents(254) = "þ"    'þ
    mvaraccents(255) = "ÿ"     'ÿ
End Sub

Conclusion :


@+, VIC

A voir également

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.