取代任何字母/数字

时间:2011-12-22 19:33:43

标签: iphone objective-c xcode unicode superscript

有没有办法上标任何数字?在我的应用程序中,我需要标注0到24之间的数字。
我知道用\u2070例如我可以显示上标0,但在Unicode中并不是我需要的所有数字。我只想将一个NSString设置为一个带有指数的数字,如10 ^ 24。有没有办法做到这一点?

3 个答案:

答案 0 :(得分:7)

它们分散在整个Unicode块中:

  • \u2070是上标0
  • \u00B9是上标1
  • \u00B2是上标2
  • \u00B3是上标3
  • \u2074是上标4
  • \u2075是上标5
  • \u2076是上标6
  • \u2077是上标7
  • \u2078是上标8
  • \u2079是上标9

要完全放置它们并更容易选择数字,您可以使用wchar_t[]类型,也可以将它们存储在字符串中:

NSString *superDigits = @"\u2070\u00B9\u00B2\u00B3\u2074\u2075\u2076\u2077\u2078\u2079";

作为练习,您可以创建一个将整数格式化为上标字符串的方法。

答案 1 :(得分:3)

嗯, 你需要的所有数字。 Look here

示例:

ruby-1.9.3 > "1\u2070\u00B9\u00B2\u00B3\u2074\u2075\u2076\u2077\u2078\u2079"
 => "1⁰¹²³⁴⁵⁶⁷⁸⁹" 

答案 2 :(得分:1)