Converting a character to upper case in string
    Laurent Tréguier 
    laurent.treguier.sink at gmail.com
       
    Fri Sep 21 12:46:18 UTC 2018
    
    
  
On Friday, 21 September 2018 at 12:15:52 UTC, NX wrote:
> How can I properly convert a character, say, first one to upper 
> case in a unicode correct manner?
> In which code level I should be working on? Grapheme? Or maybe 
> code point is sufficient?
>
> There are few phobos functions like asCapitalized() none of 
> which are what I want.
----------
import std.conv : to;
import std.stdio : writeln;
import std.string : capitalize;
import std.utf : decode;
size_t index = 1;
size_t oldIndex = index;
auto theString = "hëllo, world";
auto firstLetter = theString.decode(index);
auto result = theString[0 .. oldIndex] ~ 
capitalize(firstLetter.to!string) ~ theString[index .. $];
writeln(result);
----------
(This could be a lot prettier, but this seems to basically work)
    
    
More information about the Digitalmars-d-learn
mailing list