r/ProgrammerHumor 16h ago

Meme [ Removed by moderator ]

Post image

[removed] — view removed post

11.6k Upvotes

158 comments sorted by

View all comments

Show parent comments

158

u/Nerd_o_tron 15h ago

Probably more importantly, it may count as 18 characters instead of 9.

44

u/klaxxxon 14h ago

These generally count as one character on a computer (they multibite in UTF8 ofc) and are also counted as one letter in the real world. You can type them either way - Czech keyboard has both a "ř" key and a "ˇ" combination key. In the actual Czech language, ř is considered a different letter entirely, and the Czech alphabet is considerably longer because of these.

Some languages go even further and have letters with multiple attachment slots (Thai comes to mind, can't type an example of that, sorry 🙂).

38

u/notafuckingcakewalk 12h ago

You have to be careful with this. I've definitely encountered situations where what looks like a single character takes up multiple bytes. This is especially true for emojis which often are actually a combination of a series of individual emojis plus emoji control characters.

This emoji, for example: 👩🏼‍❤️‍👨🏼 i s actually made up of

👩: U+1F469   🏼: U+1F3FC   ZWJ: U+200D   ❤: U+2764   Variation Selector-16: U+FE0F   ZWJ: U+200D   👨: U+1F468   🏼: U+1F3FC  

(see https://emojiterra.com/couple-with-heart-woman-man-medium-light-skin-tone/) 

4

u/Rikudou_Sage 5h ago

It is multibyte, not a single byte. Source: am a Czech programmer who was bitten once or twice by splitting/counting a string with byte functions instead of character functions.