Hacker News new | ask | show | jobs
by gizmo686 3736 days ago
This is a great example of why it is important to use modules. If I were to try implementing this myself, I might have thought to check for the Chinese string "十三", but I doubt I would have known to check for the uppercase version of the Chinese string "拾叄".

More seriously, does anyone know what "uppercase" means in Chinese? Do they literally have two (seemingly unrelated) forms for each of their characters?

4 comments

Only numerals have upper cases to prevent tampering. For example, you can alter 一(one) to 十(ten) pretty easily, but not 壹 to 拾.
Oh, that actually makes a lot of sense. That also explains why they're used for checkwriting. Thanks!
Uppercase is just a simple way to put it, but it's not exactly precise. Chinese has different numeral forms depending on the usage context. The more complex versions are also known as Financial.

https://en.wikipedia.org/wiki/Chinese_numerals#Standard_numb...

Chinese only has uppercase numbers (called 大写, lit. "big writing").

I̶ ̶d̶o̶n̶'̶t̶ ̶k̶n̶o̶w̶ ̶w̶h̶y̶,̶ ̶b̶u̶t̶ ̶I̶'̶m̶ ̶h̶a̶r̶d̶l̶y̶ ̶a̶n̶ ̶e̶x̶p̶e̶r̶t̶ ̶i̶n̶ ̶C̶h̶i̶n̶e̶s̶e̶.̶ ̶T̶h̶e̶y̶'̶r̶e̶ ̶n̶o̶t̶ ̶u̶s̶e̶d̶ ̶m̶u̶c̶h̶.

EDIT: Nevermind me, see xiaq's much better comment.

Does anyone know why this breaks the content wrapping? I have seen <pre> classes do this but this text is just normal HN comment class.

I really hope using strikeout unicode does not catch on around here. It is horrible.

Works fine for me (Firefox on Android and Windows)—I think your browser doesn't handle Unicode combining characters properly. (Chrome gets a little funky with them on Android, haven't used Windows Chrome in a while).

The reason is it's two codepoints but one "grapheme", and some software doesn't handle grapheme clusters well.

There is no uppercase character in Chinese.

The Chinese characters are unicode strings.

The answer would be the same about an uppercase emoji.