Как преобразовать английские числа внутри строки в персидские / арабские числа в Objective-C?
У меня есть английская строка, которая может иметь или не иметь номера. Но я хочу, чтобы эти цифры были напечатаны на экране как персидские.
Например, еслиNSString *foo = @"a string with numbers 1 2 3;"
тогда вывод должен бытьa string with numbers ۱۲۳
Код, который я использую сейчас:
-(NSString *)convertEnNumberToFarsi:(NSString *) number{
NSString *text;
NSDecimalNumber *someNumber = [NSDecimalNumber decimalNumberWithString:number];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSLocale *gbLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"fa"];
[formatter setLocale:gbLocale];
text = [formatter stringFromNumber:someNumber];
return text;
}
Этот метод преобразует только строку, состоящую только из цифр, но, как упоминалось выше, я хочу преобразовать любую строку, которая может содержать или не содержать числа.
Как я могу достичь этого?