Avatar billede Slettet bruger
01. juni 2007 - 09:46 Der er 3 kommentarer

match 8859-1 (Latin-1) string

Hej,

er der en der kender en simpel løsning på at matche en 8859-1 streng?

På forhånd tak.
Avatar billede barklund Nybegynder
01. juni 2007 - 09:53 #1
Det bruger man ikke regexp til. Regexp fungerer ikke på byte-niveau men på tegn-niveau. Og på tegn-niveau er tegnsætsforskelle ophævet (bortset fra tilgængelige tegn). Hvad er det helt præcist, du gerne vil?

--
Morten Barklund
Avatar billede Slettet bruger
01. juni 2007 - 10:14 #2
det jeg gerne vil er at validerer om en given tekst streng indeholder andre karaktere end 8859-1 (kun bogstaver).

altså a-zA-ZæøåÆØÅÂÄÕ..... osv.

Sådan kan jeg vel gøre, men er det ikke en smartere måde ?
Avatar billede barklund Nybegynder
01. juni 2007 - 12:12 #3
Hvis man kigger på en streng med latin-1-øjne, så er alle tegn i den lovlige. Enhver utf-8-indkodet streng, vil tolket som latin-1 også være en lovlig streng. Derfor kan man faktisk ikke lige se, om en given streng, der måske er latin-1 rent faktisk er det. Alle byte-sekvenser er jo lovlige. Så jeg tror du må adressere dit problem på et andet niveau.

Hvilket sprog og hvilken kontekst snakker vi om? Nogle sprog har multibyte-understøttelse nativt givet, andre har ikke. Nogle regexp-implementationer kan se bytes, andre kun tegn.

-- 
Morten Barklund
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