Citat:
Originally posted by koala@Apr 15 2009, 22:50
Kanske inte det bästa, men man lägger bara till en extra flagga till reguljära uttryck om man vill att de ska påverkas av locale-inställningen, och vill man ha bakåtkompatibilitet så skippar man det. Känns som en ganska pragmatisk lösning, som jag skulle önska kunde göras även i JavaScript på något sätt.
|
Nja, jag är nog fortfarande skeptisk. Om man följer locale-inställningarna så tas ju éåäö med som svenska bokstäver men vad händer med orden "müsli" och "à"…? Och vilken teckenkodning förutsätter man?
För javascript vore i alla fall en sådan lösning rena katastrofen - alla webbläsare skulle implementera det lite annorlunda - och vara beroende av klientens språkinställningar (vilka kan råka eller inte råka vara samma språk som språket på webbsidan)! (Vilket gör att när du surfar in på dn från webbkaféet i Peking så får du kinesiska locale-inställningar…).
Nä, lösningen är förstås att använda unicode-baserade teckenklasser som redan finns i exempelvis Perl och php. Javascript är dessutom baserat på unicode så att använda en u-flagga som i php exempelvis vore långt mycket bättre. Kika lite på t.ex. \p{Separator}, \p{Letter} och \p{Greek} om du missat detta.