|
Posted by Kimmo Laine on 09/01/06 06:26
"BLob" <blob@nospam.invalid> wrote in message
news:44f6fcd3$0$5098$ba4acef3@news.orange.fr...
>> I have abunch of names that I'd like to normalize case-wise. Some are
>> lowercase (joe jackson), some uppercase (JOE JACKSON), and some correctly
>> cased (Joe Jackson). ucfirst(strtolower('JOE JACKSON')); works for most
>> cases, but if there's a name with a hyphen, ie. BILLY-BOB JOHNSON and
>> jack-bob johnson and Bob-Bob Johnson, they're turned into Billy-bob
>> etc...
>
> Lucky you if "your" names do not have accents signs (meaning ι, θ, κ and
> others) ! Otherwise your method wouldn't work, as it would transform
> "STEPHANE" into "Stephane" ("STEPHANE" is correct because capital letters
> do
> not take accents, whereas "Stephane" should be written "Stιphane").
>
>> The letter after the hyphen should be uppercased as well, not just the
> ones
>> after space. Anyone got idea how to do this?
>
> A dirty trick :
> Replace "-" by "- ".
> Then do your ucfirst(strtolower($name));
> Them replace back "- " by "-".
> That should do it !
>
Oh, I never thought of that. How silly, of course that'll work. Good ol'
dirty hacks. :)
Thanks BLob
--
"Ohjelmoija on organismi joka muuttaa kofeiinia koodiksi" - lpk
http://outolempi.net/ahdistus/ - Satunnaisesti pδivittyvδ nettisarjis
spam@outolempi.net || Gedoon-S @ IRCnet || rot13(xvzzb@bhgbyrzcv.arg)
[Back to original message]
|