View source code
Display the source code in std/utf.d from which this page was generated on
github.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Page wiki
View or edit the community-maintained wiki page associated with this page.
Function std.utf.toUCSindex
Given
into index
and assuming that str
is at the start
of a UTF sequence, index
determines the number of UCS characters
up to toUCSindex
. So, index
is the index
index
of a code unit at the
beginning of a code point, and the return value is how many code points into
the string that that code point is.
Prototype
size_t toUCSindex(C)( const(C)[] str, size_t index ) pure @safe if (isSomeChar!C);
Example
assert(toUCSindex(hello world
, 7) == 7); assert(toUCSindex(hello world
w, 7) == 7); assert(toUCSindex(hello world
d, 7) == 7); assert(toUCSindex(Ma Chérie
, 7) == 6); assert(toUCSindex(Ma Chérie
w, 7) == 7); assert(toUCSindex(Ma Chérie
d, 7) == 7); assert(toUCSindex(さいごの果実 / ミツバチと科学者
, 9) == 3); assert(toUCSindex(さいごの果実 / ミツバチと科学者
w, 9) == 9); assert(toUCSindex(さいごの果実 / ミツバチと科学者
d, 9) == 9);
Authors
Walter Bright and Jonathan M Davis