6
4

2 回答 2

7

中文数字在 Unicode 中不按顺序排列。那个四是U+56DB,一是U+4E00,10是5341。所以4不适合。

阅读 Unicode 标准以获取更多信息,并参见http://www.unicode.org/charts/PDF/U4E00.pdf

于 2012-09-29T12:16:59.707 回答
2

我在一个中文论坛上问过这个问题,alvin_rxg 回复了这个:

一 => U+4E00
十 => U+5341
四 => U+56DB

所以我知道我只是做了一个愚蠢的假设! grep没那么聪明。正则表达式 [一-十](一到十)预计不会与中国数字匹配它只匹配 '一' (U+4E00) 和 '十' (U+5341) 之间的任何字符。碰巧所有中文数字都在那个范围内,除了'四'(U + 56DB)!

不过,这可以用作冷笑话。;-)

于 2012-09-29T12:17:14.663 回答