2 に答える
The Chinese numbers are not in order in Unicode. That 四 is U+56DB, while 一 is U+4E00, and 10 is 5341. So the 4 doesn't fit.
Read the Unicode standard for more information, and see http://www.unicode.org/charts/PDF/U4E00.pdf.
I asked this on a Chinese forum, and alvin_rxg replies with this:
一 => U+4E00
十 => U+5341
四 => U+56DB
So I known I just made a silly assumption!
grep
is not that smart.
The regex [一-十] (one to ten) is not expected to match against Chinese numbers.
It just matches any characters between '一' (U+4E00) and '十' (U+5341).
It just happens that all Chinese numbers are in that range except '四' (U+56DB)!
This can be used as a cold joke, though. ;-)