在Unicode字符的凹处内,有一个(当前)63个字符的Unicode块,称为“数字形式”,该字符块由具有数值的字符组成,例如罗马数字Ⅻ,↉或like之类的小数部分,或诸如↊(10)或ↈ(100000)。
您的任务是编写一个程序或函数,当在此块中获得一个分配的Unicode字符列表时,该列表将按每个字符的数值排序。
字符和值的(可排序的)列表可以在Wikipedia Page上找到。
为了自成一体,这是代码点及其值的列表:
Hex Char Value
0x00BC: ¼ = 1/4 or 0.25
0x00BD: ½ = 1/2 or 0.5
0x00BE: ¾ = 3/4 or 0.75
0x2150: ⅐ = 1/7 or 0.142857
0x2151: ⅑ = 1/9 or 0.111111
0x2152: ⅒ = 1/10 or 0.1
0x2153: ⅓ = 1/3 or 0.333333
0x2154: ⅔ = 2/3 or 0.666667
0x2155: ⅕ = 1/5 or 0.2
0x2156: ⅖ = 2/5 or 0.4
0x2157: ⅗ = 3/5 or 0.6
0x2158: ⅘ = 4/5 or 0.8
0x2159: ⅙ = 1/6 or 0.166667
0x215A: ⅚ = 5/6 or 0.833333
0x215B: ⅛ = 1/8 or 0.125
0x215C: ⅜ = 3/8 or 0.375
0x215D: ⅝ = 5/8 or 0.625
0x215E: ⅞ = 7/8 or 0.875
0x215F: ⅟ = 1
0x2160: Ⅰ = 1
0x2161: Ⅱ = 2
0x2162: Ⅲ = 3
0x2163: Ⅳ = 4
0x2164: Ⅴ = 5
0x2165: Ⅵ = 6
0x2166: Ⅶ = 7
0x2167: Ⅷ = 8
0x2168: Ⅸ = 9
0x2169: Ⅹ = 10
0x216A: Ⅺ = 11
0x216B: Ⅻ = 12
0x216C: Ⅼ = 50
0x216D: Ⅽ = 100
0x216E: Ⅾ = 500
0x216F: Ⅿ = 1000
0x2170: ⅰ = 1
0x2171: ⅱ = 2
0x2172: ⅲ = 3
0x2173: ⅳ = 4
0x2174: ⅴ = 5
0x2175: ⅵ = 6
0x2176: ⅶ = 7
0x2177: ⅷ = 8
0x2178: ⅸ = 9
0x2179: ⅹ = 10
0x217A: ⅺ = 11
0x217B: ⅻ = 12
0x217C: ⅼ = 50
0x217D: ⅽ = 100
0x217E: ⅾ = 500
0x217F: ⅿ = 1000
0x2180: ↀ = 1000
0x2181: ↁ = 5000
0x2182: ↂ = 10000
0x2183: Ↄ = 100
0x2184: ↄ = 100
0x2185: ↅ = 6
0x2186: ↆ = 50
0x2187: ↇ = 50000
0x2188: ↈ = 100000
0x2189: ↉ = 0
0x218A: ↊ = 10
0x218B: ↋ = 11
测试用例:
['½','ↆ','ↂ','⅒','Ⅽ','⅑','ⅷ'] -> ['⅒','⅑','½','ⅷ','ↆ','Ⅽ','ↂ']
['¼','↋','↉','ↅ','⅐','⅟','Ⅻ','ⅺ'] -> ['↉','⅐','¼','⅟','ↅ','↋','ⅺ','Ⅻ']
['¼','½','¾','⅐','⅑','⅒','⅓','⅔','⅕','⅖','⅗','⅘','⅙','⅚','⅛','⅜','⅝','⅞','⅟'] -> ['⅒','⅑','⅛','⅐','⅙','⅕','¼','⅓','⅜','⅖','½','⅗','⅝','⅔','¾','⅘','⅚','⅞','⅟']
'⅞ⅾ↊ↄⅨⅮⅺↁⅸⅰⅩⅱⅶ¾ⅧↅↃ↋ↆ⅔ⅼⅲ⅘⅒ⅽⅦ⅕ⅤⅭⅳↂⅪⅬⅯↇⅠⅷ⅛Ⅵ½ⅵ¼ⅻ⅐Ⅱ⅜⅗⅝⅚Ⅳ⅓ⅴ↉ⅿⅫⅹↀↈ⅙⅑Ⅲ⅖⅟' -> '↉⅒⅑⅛⅐⅙⅕¼⅓⅜⅖½⅗⅝⅔¾⅘⅚⅞⅟ⅠⅰⅡⅱⅢⅲⅣⅳⅤⅴⅥⅵↅⅦⅶⅧⅷⅨⅸⅩⅹ↊Ⅺⅺ↋ⅫⅻⅬⅼↆⅭⅽↄↃⅮⅾⅯⅿↀↁↂↇↈ'
['Ↄ','ↄ','↊','↋'] -> ['↊','↋','ↄ','Ↄ']
请注意,尽管其中四个符号(在最后一种情况下使用的符号)仍具有数字值,但它们不是unicode数字,因此请确保在发布内置符号之前先进行检查。