我有一个英文字符串,其中可能包含数字。但我希望将这些数字以波斯数字的形式打印在屏幕上。
例如,如果 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;
}
这个方法只能转换仅包含数字的字符串,但正如上面所提到的,我想转换任何可能包含或不包含数字的字符串。
我该如何实现这个?