NSString: Unicode search for add-in: 1, 2, 3

I'm looking for Unicode or some method or byte language that can set superscripts for 1, 2, 3. For some reason, Unicode has superscripts for 0, 4, 5, 6, 7, 8, 9, but not 1, 2, 3.

Can you do superscripts like HTML in NSString ?

+6
source share
3 answers

From the character palette:

 ¹ SUPERSCRIPT ONE Unicode: U+00B9, UTF-8: C2 B9 ² SUPERSCRIPT TWO Unicode: U+00B2, UTF-8: C2 B2 ³ SUPERSCRIPT THREE Unicode: U+00B3, UTF-8: C2 B3 

This, to make them in NSStrings , you would do:

 NSString *superscript1 = @"\u00B9"; NSString *superscript2 = @"\u00B2"; NSString *superscript3 = @"\u00B3"; 
+5
source

I know this question has already been answered, but if someone wants to reuse my code to convert from a standard string of numbers to superscript, here it is.

 -(NSString *)superScriptOf:(NSString *)inputNumber{ NSString * outp=@ ""; for (int i =0; i<[inputNumber length]; i++) { unichar chara=[inputNumber characterAtIndex:i] ; switch (chara) { case '1': NSLog(@"1"); outp=[outp stringByAppendingFormat:@"\u00B9"]; break; case '2': NSLog(@"2"); outp=[outp stringByAppendingFormat:@"\u00B2"]; break; case '3': NSLog(@"3"); outp=[outp stringByAppendingFormat:@"\u00B3"]; break; case '4': NSLog(@"4"); outp=[outp stringByAppendingFormat:@"\u2074"]; break; case '5': NSLog(@"5"); outp=[outp stringByAppendingFormat:@"\u2075"]; break; case '6': NSLog(@"6"); outp=[outp stringByAppendingFormat:@"\u2076"]; break; case '7': NSLog(@"7"); outp=[outp stringByAppendingFormat:@"\u2077"]; break; case '8': NSLog(@"8"); outp=[outp stringByAppendingFormat:@"\u2078"]; break; case '9': NSLog(@"9"); outp=[outp stringByAppendingFormat:@"\u2079"]; break; case '0': NSLog(@"0"); outp=[outp stringByAppendingFormat:@"\u2070"]; break; default: break; } } return outp; } 

Given the input string of numbers, it simply returns the equivalent superscript string.

Edit (thanks jrturton):

 -(NSString *)superScriptOf:(NSString *)inputNumber{ NSString * outp=@ ""; unichar superScripts[] = {0x2070, 0x00B9, 0x00B2,0x00B3,0x2074,0x2075,0x2076,0x2077,0x2078,0x2079}; for (int i =0; i<[inputNumber length]; i++) { NSInteger x =[[inputNumber substringWithRange:NSMakeRange(i, 1)] integerValue]; outp=[outp stringByAppendingFormat:@"%C", superScripts[x]]; } return outp; } 
+5
source

Source: https://habr.com/ru/post/893641/


All Articles