Как преобразовать английские числа внутри строки в персидские / арабские числа в 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;
}

Этот метод преобразует только строку, состоящую только из цифр, но, как упоминалось выше, я хочу преобразовать любую строку, которая может содержать или не содержать числа.

Как я могу достичь этого?

Ответы на вопрос(5)

Ваш ответ на вопрос