Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios StringByReplacingOfString不适合阿拉伯数字_Ios_Nsstring_Nslocale - Fatal编程技术网

Ios StringByReplacingOfString不适合阿拉伯数字

Ios StringByReplacingOfString不适合阿拉伯数字,ios,nsstring,nslocale,Ios,Nsstring,Nslocale,在阿拉伯语中,它不能代替逗号 NSString *strAfterReplacingComma = @"٢٠٠٫٠٠";//100.00 NSString *strAfterReplacing = [strAfterReplacingComma stringByReplacingOccurrencesOfString:@"," withString:@"."]; NSLog(@"%@", strAfterReplacing); 有人能帮我解决这个问题吗?你的阿拉伯语

在阿拉伯语中,它不能代替逗号

    NSString *strAfterReplacingComma = @"٢٠٠٫٠٠";//100.00
    NSString *strAfterReplacing = [strAfterReplacingComma  stringByReplacingOccurrencesOfString:@"," withString:@"."];

    NSLog(@"%@", strAfterReplacing);

有人能帮我解决这个问题吗?

你的阿拉伯语文本(٫)中的逗号有一个unicode数字
U+002C
。它是阿拉伯十进制分隔符。不是逗号。英文逗号(,)有一个unicode数字
U+066B
。因此,替换失败


使用此
٫
而不是
在您的
字符串中使用replacingOfstring

我检查了您的代码及其工作状态,并且能够将逗号(,)替换为点(。)请详细解释实际需求。
NSLog(@“%@”,Strafterreplacement)的输出是什么?ASCII逗号是
0x2C
,因此我假设它是阿拉伯语分隔符,即
U+066B
,StrafterReplacingCommma中使用的分隔符和stringByReplacingOccurrencesOfString中使用的分隔符是两个不同的字符。他们有两个不同的独角兽。因此,替换不会发生。U+002C用于原始字符串中。其中,as U+066B在字符串中的使用是通过替换字符串的发生。检查此链接以了解两者之间的差异:ASCII逗号0x2C是unicode U+002C。它不是U+006B Hanks Shanti K。您能告诉我,如何使用unicodes替换它吗。你能给我一些代码样本吗?般若南韩。。就你而言。。只需将stringByReplacingOccurrencesOfString.的参数替换为stringByReplacingOccurrencesOfString。。您不必使用unicode。。您可以直接从阿拉伯文本中复制阿拉伯小数分隔符逗号。。并将其作为参数放置在字符串ByReplacingOccurrencesofString中。。