Avatar billede al1407 Nybegynder
17. maj 2004 - 09:54 Der er 9 kommentarer og
1 løsning

Konverter HTML "ascii" koder til tegn

Chr() tager kun ASCII koder fra 0-255, og det er vel også fint nok til normalt brug.

Nu vil jeg gerne kunne konvertere de her "…" (eksempel) koder, som man sommetider ser i HTML. Ovenstående kode er så vidt jeg husker en "horizontal elipsis" ("..." som ét tegn).

Men, hvordan får jeg konverteret '8230' til et tegn?
Avatar billede voirsous Nybegynder
17. maj 2004 - 12:22 #1
du kan jo bruge en liste, en lykke, og så en replace.
Avatar billede voirsous Nybegynder
17. maj 2004 - 12:43 #2
Denne her har jeg lige skrevet;

Public Function FjernASCII(kode As String)
  Dim FilNummer As Integer
  Dim Filnavn, Linje, ACSII, Resultat As String
  Dim splitKomma
 
  FilNummer = FreeFile
  Filnavn = "c:\acsiiordliste.txt"
 
  Open Filnavn For Input As #FilNummer
    Do
    Line Input #FilNummer, Linje
    splitKomma = Split(Linje, " ")
    Resultat = Replace(splitKomma(0), ",", "")
    ACSII = splitKomma(1)
    kode = Replace(kode, ACSII, Resultat)
    Loop Until EOF(FilNummer)
   
  MsgBox kode
End Function



c:\acsiiordliste.txt har en syntakst der ser sådan her ud:
[resultat][mellemrum][acsii]

eksepel

. …


Du må selv ud på nettet og lede efter en liste. Hvis du tilfældigvis finde en med en anden syntakst, burde det ikke være så vanskeligt at skrive koden om.

Vh. Casper
Avatar billede voirsous Nybegynder
17. maj 2004 - 12:45 #3
Hov denne:
Resultat = Replace(splitKomma(0), ",", ""
skal rettes til:
Resultat = Replace(splitKomma(0), " ", ""
Avatar billede al1407 Nybegynder
18. maj 2004 - 21:38 #4
Okay, jeg burde måske have indledt med, at jeg godt kender til proceduren omkring search/replace funktionen - jeg bruger en regular expression til at søge efter "&#([0-9]+);".

Der findes ingen decideret "liste" over disse koder, da det er "almindelige" tegnkoder, men problemet er at VB ikke kan håndtere disse gennem Chr() funktionen.
Avatar billede sjh Nybegynder
19. maj 2004 - 04:33 #5
hvis det kan hjælpe så er her en liste over dem du ikke kan bruge Chr() til:

De starter fra 338-8482
http://www.w3schools.com/html/html_entitiesref.asp
Avatar billede sjh Nybegynder
19. maj 2004 - 05:15 #6
Jeg har lavet en lille stump kode som du kan bygge vider på..


Private Sub Form_Load()
'Me.Caption = Entities(710)

'Sådan kan du finde nummert, kopier "Result" fra tabellen: _
http://www.w3schools.com/html/html_entitiesref.asp _
og indset det tegn Asc("HER") og nu vil den vise det nummer _
som tegnet bruger, så skal du bare indtaste det i koden (Entities)

Me.Caption = Asc("˜") '<- &#732;

End Sub

Public Function Entities(ByVal Number As Integer) As String
  Select Case Number
        Case 0 To 255
          Entities = Chr$(Number)
        Case 338: Entities = Chr$(140)
        Case 339: Entities = Chr$(156)
        Case 352: Entities = Chr$(138)
        Case 353: Entities = Chr$(154)
        Case 376: Entities = Chr$(159)
        Case 710: Entities = Chr$(136)
        Case 732: Entities = Chr$(152)
        Case Else
          Entities = "Chr(?)"
  End Select
End Function
Avatar billede sjh Nybegynder
19. maj 2004 - 05:25 #7
Så kan du forsætte med at sette navne på også ;)

Public Function Entities(ByVal Value As String) As String
  Select Case Value
        Case 0 To 255
          Entities = Chr$(CLng(Value))
        Case 338, "OElig":  Entities = Chr$(140)
        Case 339, "oelig":  Entities = Chr$(156)
        Case 352, "Scaron": Entities = Chr$(138)
        Case 353, "scaron": Entities = Chr$(154)
        Case 376, "Yuml":  Entities = Chr$(159)
        Case 710, "circ":  Entities = Chr$(136)
        Case 732, "tilde":  Entities = Chr$(152)
        Case Else
          Entities = "Chr(?)"
  End Select
End Function
Avatar billede al1407 Nybegynder
19. maj 2004 - 14:31 #8
Det der kunne jeg bruge til noget - tak!
Svarer du, sjh?
Avatar billede sjh Nybegynder
19. maj 2004 - 22:46 #9
Svar :-)
Avatar billede al1407 Nybegynder
19. november 2004 - 17:47 #10
Wauw .. undskyld den lange ventetid! Jeg har lige gang i oprydning af mine spørgsmål - tak!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester